Home  >  Article  >  Backend Development  >  How to convert numbers into strings in c language

How to convert numbers into strings in c language

青灯夜游
青灯夜游Original
2023-01-04 15:20:0928572browse

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.

How to convert numbers into strings in c language

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 = &#39;c&#39;; // 随便初始化一下
	str1 = 0x30 + 5;
	printf("str1: %c\n", str1);
	printf("str1: %d\n", str1);

   
   return 0;
}

How to convert numbers into strings in c language

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;
}

How to convert numbers into strings in c language

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);
}

How to convert numbers into strings in c language

【 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!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn