如何在 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