Citat:
gandalf:
Sta je to heap?? Definisano mesto od u memoriji za neku promenljivu ili... ??
Heap ti je otprilike memorija koju tvoj program ima na raspolaganju da koristi. Da bi je koristio mora prvo da je zatrazi od operativnog sistema (alocira), i kad zavrsi sa koriscenjem trebalo bi da je oslobodi, u protivnom dolazi do tkz. memory leak-ova.
Za C alociras memoriju mislim preko malloc() a oslobadjas preko free()
Za C++ imas new i delete reci.
Za win32 api imas GlobalAlloc(), HeapAlloc(), VirtuallAlloc() i njima korespondendske funkcije za oslobadjanje.
Citat:
I drugo gde se smestaju promenljive koje koji ma su dodljene vrednosti?? (stack heap) ili negde na neko trece mesto.
Ako mislis na promenljive koje su inicijalizovane na samom pocetku programa, npr
int a=5;
ili
char asd[]="whuzaaaaaaa";
One su smestene u samom izvrsnom fajlu, gde tacno to zavisi od izvrsnog fajla i njegove strukture, za win32 PE fajlove to je negde u data sekciji
Citat:
E da kad sam vec kod toga kako se pristupa promenljivim koje se nalaze na stacku znaci moraju li da se sa stacka uzimaju po nekom redosledu ili ... ?
Promenljivim na stacku se pristupa preko da kazem "dinamicki", znaci to nisu tacno odredjene i u napred poznate lokacije kao npr kod inicijalizovanih promenljivih, ili globalnih promenljivih.Ako te bas zanima detaljno kako onda moras malo znati kako kompajleri generisu asm kod, sta je stack frame itd...
-I know UNIX, PASCAL, C, FORTRAN,
COBOL, and nineteen other high-tech
words.