2 remarques :Envoyé par PRomu@ld
- Il serait interessant de présenter la façon de déterminer la taille en se basant sur le pointeur (sizeof *p) au lieu du type (sizeof (T)), comme expliqué ici :
http://emmanuel-delahaye.developpez....tes.htm#malloc
- Il manque une mise en garde à propos de calloc(). Cette fonction met tous les bits à 0 (comme un memset(..., 0, ...). Or, la représentation interne des type à 0 n'est pas forcément 'all-bit-to-0'. Il y a notamment un risque d'erreur avec les flottants et avec les pointeurs dont la représentation interne n'est pas forcément all-bit-to-0.
D'aure part, C99 parle de 'Trap representation' pour les entiers autres que char. La valeur all-bit-to-0 pourrait très bien être une Trap representation. A éviter donc pour être portable.
Partager