1. Introduction

Pour réserver de la mémoire pour une chaîne de caractères, certains écrivent

			
char *chaine;
chaine = malloc (N * sizeof (char));
			
		

Et d'autres écrivent

			
char *chaine;
chaine = malloc (N);
			
		

D'un point de vue, sizeof() est nécessaire quand il ne s'agit pas de caractères. Et par souci de garder la bonne habitude d'écrire sizeof() certains préfèrent l'écrire aussi pour des caractères. Par cohérence ou homogénéité disent-ils. D'un autre point de vue, en C, par définition sizeof(char) == 1, est toujours vrai. Alors pourquoi ne pas en profiter pour ne pas écrire ce sizeof(char) qui ne sert à rien et gène la lisibilité de certains ?

Il existe une alernative qui mérite d'être présentée pour les quelques avantages qu'elle apporte par rapport aux deux manières de faire ci-dessus.

création est mise à disposition sous un contrat Creative Commons