Maison > développement back-end > C++ > Pourquoi la soustraction de « 0 » à un caractère révèle-t-elle sa valeur numérique en C ?

Pourquoi la soustraction de « 0 » à un caractère révèle-t-elle sa valeur numérique en C ?

DDD
Libérer: 2024-12-08 11:40:11
original
581 Les gens l'ont consulté

Why Does Subtracting '0' from a Character Reveal its Numeric Value in C?

Décodage des valeurs de caractères : pourquoi la soustraction de « 0 » divulgue la représentation numérique

Une question déroutante se pose : pourquoi la soustraction de « 0 » à un Le caractère en C révèle-t-il la valeur numérique qu'il représente ?

Pour résoudre cette énigme, Plongeons dans le domaine de l'ASCII (American Standard Code for Information Interchange), qui attribue des codes numériques à chaque caractère. « 0 » occupe la première position dans cette séquence numérique, les caractères suivants étant progressivement attribués à des valeurs plus élevées.

Par exemple, « 9 » représente la valeur numérique 57, tandis que « 0 » correspond à 48. En soustrayant « 0 » ' à partir d'un caractère, on calcule essentiellement la différence entre son code ASCII et le code ASCII de '0'.

Considérons l'exemple : char c = « 9 » ; int x = (int)(c - '0');
Ici, '9' a un code ASCII de 57. Soustraire '0' (qui a un code ASCII de 48) donne 57 - 48 = 9, ce qui est précisément la valeur numérique représentée par « 9 ».

Le tableau ASCII suivant illustre davantage cela concept :

Character ASCII Code
'0' 48
'1' 49
'9' 57

En soustrayant « 0 » à n'importe quel caractère, nous pouvons décoder efficacement la valeur numérique qu'il représente, une technique couramment utilisée dans diverses applications de programmation.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal