destruction d'une structure
Bonjour, je reprends le code d'un ami et il y a une partie qui me "gêne". Voilà en gros son code :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
|
typedef struct{
blabla
}A;
A * CreateA(blabla)
{
A * a=malloc(sizeof(*a));
blabla
return a;
}
void DestroyA(A * a)
{
blabla
free(a);
a=0;
} |
Je doute qu'après Destroy(a) le pointeur soit remis à NULL. J'aurais plus fait
Code:
1 2 3 4 5 6 7
|
void DestroyA(A ** a)
{
blabla
free(*a);
*a=NULL;
} |
et DestroyA(&a); car a est une recopie.
Qu'en pensez-vous ?
Merci.