En fait, en théorie, char admet des valeurs dans [0..127] (au minimum), et représente des caractères, tandis que signed char (au moins [-128..127]) et unsigned char (au moins [0..255]) sont des types à vocation numérique.
La norme spécifie explicitement ces trois types, et permet d'implémenter char comme un signed ou unsigned char.
Pour des maths, il vaudrait mieux utiliser l'un des deux types explicites
Partager