Conversion d'un seul caractère en entier
Lorsque vous traitez des données numériques stockées sous forme de caractères, il est crucial de les convertir en entiers pour les calculs. Bien que atoi() permette la conversion à partir d'une chaîne, cela implique une étape intermédiaire inutile.
Heureusement, il existe une méthode plus efficace basée sur l'encodage des chiffres de 48 (pour '0') à 57 (pour ' 9'). Cet encodage s'applique à différents schémas d'encodage, notamment ASCII et UTF-x.
Grâce à ces connaissances, vous pouvez soustraire « 0 » (ou 48) du caractère numérique pour obtenir sa valeur entière :
char c = '1'; int i = c - '0'; // i is now equal to 1, not '1'
Vous pouvez également utiliser l'équivalent :
char c = '1'; int i = c - 48; // i is now equal to 1, not '1'
Bien que les deux méthodes donnent le résultat souhaité, le premier est généralement considéré comme plus lisible. Cette technique convertit efficacement les caractères uniques en entiers sans avoir besoin de manipulation de chaîne auxiliaire.
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!