如何在 C 语言中把整数转换成字符串

Satishkumar Bharadwaj 2023年10月12日
  1. sprintf() 函数在 C 语言中把一个整数转换成字符串
  2. itoa() 函数在 C 语言中把整数转换为字符串
如何在 C 语言中把整数转换成字符串

本教程介绍了如何在 C 语言中把一个整数转换成字符串的方法,在 C 语言中把一个整数转换成字符串有不同的方法,如 sprintf()itoa() 函数。

sprintf() 函数在 C 语言中把一个整数转换成字符串

顾名思义,它用于将任何值打印成字符串。这个函数提供了一个将整数转换成字符串的简单方法。它的工作原理与 printf() 函数相同,但它并不直接在控制台打印一个值,而是返回一个格式化的字符串。返回值通常会被丢弃,但如果在操作过程中出现错误,它会返回 -1

sprintf() 语法

int sprintf(char *str, const char *format, [ arg1, arg2, ... ]);
  • str 是一个指向 char 数据类型的指针。
  • format 是用来显示输出类型和占位符。
  • arg1, arg2 是要转换为字符串的整数。

sprintf() 在 C 语言中把整数转换为字符串的示例代码

#include <stdio.h>

int main(void) {
  int number;
  char text[20];

  printf("Enter a number: ");
  scanf("%d", &number);

  sprintf(text, "%d", number);

  printf("\nYou have entered: %s", text);

  return 0;
}

输出:

Enter a number: 20
You have entered: 20

itoa() 函数在 C 语言中把整数转换为字符串

itoa() 是 C 语言中的一个类型转换函数,该函数将一个整数转换为一个空值结尾的字符串。它也可以转换负数。

itoa() 语法

char* itoa(int num, char* buffer, int base)
  • num 是一个整数。
  • buffer 是指向 char 数据类型的指针。
  • base 是一个转换基数。它定义了一个整数值,将其转换为基值,并将其存储到缓冲区中。如果基数是 10,而值是负数,那么产生的字符串将以减号(-)开头。

在 C 语言中将整数转换为字符串的 itoa() 函数示例代码

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

int main(void) {
  int number, l;
  char string[20];

  printf("Enter a number: ");
  scanf("%d", &number);

  itoa(number, string, 10);

  printf("String value = %s\n", string);

  return 0;
}

输出:

Enter a number: 15
String value: 15
警告
itoa() 不是一个 ANSI C 标准函数。根据你的平台,它可能无法在你的 GCC 编译器上工作。

相关文章 - C Integer

相关文章 - C String