Vérifiez ceci C
programme :
#include <stdio.h>
int main(void) {
// your code goes here
char **p = NULL;
printf("%d,%d\n", sizeof(*p), sizeof(**p));
return 0;
}
En exécutant le code ci-dessus, le résultat est :
8,1
Bien que p
es NULL
il ne provoque pas de crash du programme dans sizeof(*p)
y sizeof(**p)
. Comment comprendre ce comportement ? Est-il assuré dans c spec ?