à savoir que tant que l'on reste dans les char ou unsigned char, les additions, les ops logiques, les soustractions se comportent pareil, qu'il s'agisse d'unsigned char ou de char. La où joue la différence de type, c'est quand il faut étendre les données
(conversion vers un type avec plus de données)
char c=-3;
unsigned char uc=c;
int i=c;
cout<<i; //i=-3
int j=uc; //(256-3)=253
ou quand on fait des + ou des *.
Si tu traites ds chaînes de caractères, pas de souci sur char ou unsigned char. Pour le reste, choisis.
(je pense que le champ d'application des (signed) char en opérations arithmétiques est limité vu la mémoire qu'on a ajourd'hui)
---------------
-----------------------