Quote:
|
Originariamente inviato da 71104
nel caso specifico non da' problemi, ma in generale può causare leak. il discorso che in questo caso non badi ai leak perché tanto il programma termina subito non vale, perché in tal caso il codice manca di metodologia coerente (perché alla fine fai fclose...?)
|
Normalmente, se non per abitudine nello scrivere buon codice, è inutile chiudere i vari riferimenti, handle, file descriptors ecc. prima di terminare (anche se, effettivamente, nel codice che hai quitato lo si fa a metà: o tutto o niente, condivido

). Certo, è buona norma ricordarsene perché poi c'é il rischio di non chiuderli mai (anche quando il programma non deve terminare) andando incontro facilmente a memory leaks (e situazioni simili, come dangling pointers).
Sono in cerca di situazioni che causano memory leaks anche dopo la terminazione di un programma (insomma, funzioni che si riservano memoria nel loro spazio dei processi (ma non solo), e che non viene liberata (se non esplicitamente) anche dopo aver terminato.
Forse la shared memory?