[so] Macro-ul DIE - improved

Marius Ungureanu therzok at gmail.com
Sun Mar 22 12:57:25 EET 2015


2015-03-22 12:52 GMT+02:00 Razvan Deaconescu via so <so at cursuri.cs.pub.ro>:
> Nu înțeleg nevoia acestor două noi macro-uri, mai complicate. Când un
> proces se încheie (cu exit), _toate_ resursele sale sunt eliberate:
> fișiere închise, memorie dezalocată etc. Nu văd nevoia acelor funcții de
> cleanup.

Cand rulezi procesul cu valgrind si fortezi o eroare, valgrind spune ca ai leak.

int *array1 = malloc(size1 * sizeof(int));
DIE(!array1, "malloc1 fail"); /* Asta e ok. */
int *array2 = malloc(size2 * sizeof(int));
DIE(!array2, "malloc2 fail"); /* Valgrind spune ca array1 e leaked. */

Eu de asta l-am folosit si cred ca e mai bine sa nu ai false-positive
output in acest caz.

Marius


More information about the so mailing list