Doublons possibles:
Comment convertir un seul caractère dans un int
Caractère à entier en CTout organisme peut-il me dire comment convertir un
char
enint
?char c[]={'1',':','3'}; int i=int(c[0]); printf("%d",i);
Quand j'essaye cela, ça donne 49.
Cette question a déjà des réponses:
Réponses
Trop de publicités?
Paul Tomblin
Points
83687
Dans les temps anciens, quand on pouvait supposer que la plupart des ordinateurs utilisaient ASCII, on ne ferait que
int i = c[0] - '0';
Mais en ces jours d'Unicode, ce n'est pas une bonne idée. Ce n'était jamais une bonne idée si votre code devait être exécuté sur un ordinateur non-ASCII.
Edit: Bien que cela ait l'air malicieux, il est évidemment garanti par le standard de fonctionner. Merci @Earwicker.
Frans Bouma
Points
6015
Mehrdad Afshari
Points
204872