C language method of converting numbers into strings: 1. ASCII code operation, adding "0x30" to the original number, the syntax "number 0x30" will store the character ASCII code corresponding to the number; 2. Using itoa(), you can convert the integer into a string, the syntax is "itoa(number1, string, number);"; 3. Using sprintf(), you can format the content according to the specified requirements and store it to the pointer pointed to String.
The operating environment of this tutorial: windows7 system, c99 version, Dell G3 computer.
Several methods of converting numbers into strings in C language
Method 1. ASCII code operation: Number 0x30
Since the storage form of char type is ASCII code value, you can add the ASCII code 48 of the number 0, that is, 0x30, to store the character ASCII code corresponding to the number.
#include <stdio.h> int main() { char str1 = 'c'; // 随便初始化一下 str1 = 0x30 + 5; printf("str1: %c\n", str1); printf("str1: %d\n", str1); return 0; }
One sentence to expand here is that since the essence of storing characters is ascii code, it is feasible to use uint8_t or other types of variables/arrays to store characters. In my project, u8 is used for storage. The advantage is that the data structure must be 8-bit, and its unsigned characteristics are also determined.
Method 2. Use itoa()
This is a function of the cstdlib non-standard library.
itoa (representing integer to alphanumeric) is a function that converts integer numbers into strings.
The usage of this function is
char *itoa (int value, char *str, int base);
value is the original number
str is the string pointer to be saved
base is the specified number base
An example is:
#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; }
Method 3: sprintf() function
This is the stdio standard library function. This function can format the content according to the specified requirements and store it in the string pointed to by the pointer.
Declaration of sprintf() function.
int sprintf(char *str, const char *format, ...)
str -- This is a pointer to a character array that stores the C string.
format -- This is the string containing the text to be written to the string str. It can contain an embedded format tag, which can be replaced by the value specified in subsequent additional parameters and formatted as required. The format tag attribute is %[flags][width][.precision][length]specifier
Example:
#include <stdio.h> #include <math.h> int main() { char str[80]; sprintf(str, "Pi 的值 = %f", M_PI); puts(str); return(0); }
【 Related recommendations: C language video tutorial, Programming teaching】
The above is the detailed content of How to convert numbers into strings in c language. For more information, please follow other related articles on the PHP Chinese website!