Dinamicka alokacija memorije u f-ji

raven17

Obećava
Poruka
79
Radi se o jeziku C. Dakle, ako imam funkciju koja treba da generise neki string, imam dve opcije, da taj string deklarisem kao static i da mu unpared zadam duzinu. E sad, ako hocu da dinamicki alociram memoriju za taj string, odnosno ako mu ne znam duzinu, memorija koja je alocirana ce biti u heap-u (koliko sam ja razumeo), a heap se ne brise nakon izlaska iz funkcije. Tako da ta funkcija treba da vrati samo pokazivac na prvi karaketeru u stringu koji se nalazi u heap-u. Jel ovo legalno sto napisah, ili sam nesto pogresno razumeo?
 
Malo sam se igrao, i izgleda da mi je prvi nacin mnogo efikasniji, sa static deklaracijom posto string sigurno nije vec deuzine od 20. Naime u pitanju je f-ja koja prima dva rgumenta neki broj, maximum tipa long long,i neki brojcani sistem ( do 36, 26 slova alfabeta i 10 cifara), i vraca dati broj u datom sistem kao string. Kad bi punio memoriju u heap-u, posle iskoriscenja bih morao da je oslobadjam... Previse komplikovano za prostu stvar.
 

Back
Top