Maison > Article > développement back-end > Comment convertir des nombres en chaînes en langage C
Méthode du langage C pour convertir des nombres en chaînes : 1. Opération de code ASCII, ajoutez « 0x30 » au numéro d'origine, la syntaxe est « numéro + 0x30 », le caractère code ASCII correspondant au numéro sera stocké ; itoa( ), vous pouvez convertir un entier en chaîne, la syntaxe est "itoa(number1, string, number);"; 3. En utilisant sprintf(), vous pouvez formater le contenu selon les exigences spécifiées et le stocker dans le chaîne pointée par le pointeur.
L'environnement d'exploitation de ce tutoriel : système Windows 7, version c99, ordinateur Dell G3.
Plusieurs méthodes de conversion de nombres en chaînes en langage C
Méthode 1. Opération de code ASCII : Nombre + 0x30
Étant donné que le type de caractère est stocké dans une valeur de code ASCII, des nombres peuvent être ajoutés. L'ASCII Le code de 0 est 48, soit 0x30, qui stocke le code de caractère ASCII correspondant au numéro.
#include <stdio.h> int main() { char str1 = 'c'; // 随便初始化一下 str1 = 0x30 + 5; printf("str1: %c\n", str1); printf("str1: %d\n", str1); return 0; }
Extension ici, puisque l'essence du stockage des caractères est le code ascii, il est possible d'utiliser uint8_t ou d'autres types de variables/tableaux pour stocker les caractères. Dans mon projet, u8 est utilisé pour le stockage. L'avantage est que la structure des données doit être de 8 bits et que ses caractéristiques non signées sont également déterminées.
Méthode 2, utilisez itoa()
Il s'agit d'une fonction de la bibliothèque non standard cstdlib.
itoa (représentant un entier en alphanumérique) est une fonction qui convertit les nombres entiers en chaînes.
L'utilisation de cette fonction est
char *itoa (int value, char *str, int base);
value est le nombre d'origine
str est le pointeur de chaîne à enregistrer
base est la base numérique spécifiée
Un exemple est :
#include <stdlib.h> #include <stdio.h> int main() { int number1 = 123456; int number2 = -123456; char string[16] = {0}; itoa(number1,string,10); printf("数字:%d 转换后的字符串为:%s\n",number1,string); itoa(number2,string,10); printf("数字:%d 转换后的字符串为:%s\n",number2,string); return 0; }
Méthode 3 : fonction sprintf()
Il s'agit de la fonction de bibliothèque standard stdio. Cette fonction peut formater le contenu selon les exigences spécifiées et le stocker dans la chaîne pointée par le pointeur.
Déclaration de la fonction sprintf().
int sprintf(char *str, const char *format, ...)
str -- Il s'agit d'un pointeur vers un tableau de caractères qui stocke une chaîne C.
format -- Il s'agit de la chaîne contenant le texte à écrire dans la chaîne str. Il peut contenir une balise de format intégrée, qui peut être remplacée par la valeur spécifiée dans les paramètres supplémentaires suivants et formatée selon les besoins. L'attribut de la balise de format est %[flags][width][.precision][length]specifier
Exemple :
#include <stdio.h> #include <math.h> int main() { char str[80]; sprintf(str, "Pi 的值 = %f", M_PI); puts(str); return(0); }
【Recommandations associées : Tutoriel vidéo sur le langage C, Enseignement de la 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!