溫馨提示×

C語言中itoa()和sprintf()函數(shù)怎么使用

小億
110
2023-09-05 23:38:54
欄目: 編程語言

itoa()函數(shù)是將一個(gè)整數(shù)轉(zhuǎn)換成字符串的函數(shù),函數(shù)原型為:char *itoa(int value, char *str, int radix)。

value為要轉(zhuǎn)換的整數(shù);

str為轉(zhuǎn)換后的字符串;

radix為進(jìn)制數(shù),可以取值為2、8、10或16。

sprintf()函數(shù)是將格式化的數(shù)據(jù)寫入字符串中的函數(shù),函數(shù)原型為:int sprintf(char *str, const char *format, …);

str為輸出的字符串;

format為格式化字符串;

…為可選的參數(shù),根據(jù)format中指定的格式進(jìn)行轉(zhuǎn)換。

以下是使用itoa()和sprintf()函數(shù)的示例代碼:

#include <stdio.h>
#include <stdlib.h>
int main() {
int num = 123;
char str[10];
// 使用itoa()函數(shù)將整數(shù)轉(zhuǎn)換成字符串
itoa(num, str, 10);
printf("itoa(): %s\n", str);
// 使用sprintf()函數(shù)將整數(shù)轉(zhuǎn)換成字符串
sprintf(str, "%d", num);
printf("sprintf(): %s\n", str);
return 0;
}

輸出結(jié)果為:

itoa(): 123
sprintf(): 123

可以看到,兩個(gè)函數(shù)都可以將整數(shù)轉(zhuǎn)換成字符串,但itoa()函數(shù)只能轉(zhuǎn)換為十進(jìn)制字符串,而sprintf()函數(shù)可以根據(jù)格式化字符串的指定,轉(zhuǎn)換為不同進(jìn)制的字符串。

0