En C, existe-t-il un moyen de convertir une valeur ASCII tapée en entier dans le caractère ASCII en tant que caractère?)
Vous pouvez affecter directement int
à char
.
int a = 65;
char c = a;
printf("%c", c);
En fait, cela fonctionnera également.
printf("%c", a); // assuming a is in valid range
Si i
est le int
, alors
char c = i;
en fait un char
. Vous voudrez peut-être ajouter une vérification que la valeur est <128
s'il provient d'une source non fiable. Ceci est mieux fait avec isascii
de <ctype.h>
, si disponible sur votre système (voir le commentaire de @Steve Jessop à cette réponse).
Si le nombre est stocké dans une chaîne (ce qu'il serait s'il était tapé par un utilisateur), vous pouvez utiliser atoi()
pour le convertir en entier.
Un entier peut être affecté directement à un caractère. Un personnage est différent principalement parce qu'il est interprété et utilisé.
char c = atoi("61");