A. 用c語言怎麼將整數轉換成字元串
1.int/float to string/array:
C語言提供了幾個標准庫函數,可以將任意類型(整型、長整型、浮點型等)的數字轉換為字元串,下面列舉了各函數的方法及其說明。
● itoa():將整型值轉換為字元串。
● ltoa():將長整型值轉換為字元串。
● ultoa():將無符號長整型值轉換為字元串。
● gcvt():將浮點型數轉換為字元串,取四捨五入。
● ecvt():將雙精度浮點型值轉換為字元串,轉換結果中不包含十進制小數點。
● fcvt():指定位數為轉換精度,其餘同ecvt()。
除此外,還可以使用sprintf系列函數把數字轉換成字元串,其比itoa()系列函數運行速度慢
2. string/array to int/float
C/C++語言提供了幾個標准庫函數,可以將字元串轉換為任意類型(整型、長整型、浮點型等)。
● atof():將字元串轉換為雙精度浮點型值。
● atoi():將字元串轉換為整型值。
● atol():將字元串轉換為長整型值。
● strtod():將字元串轉換為雙精度浮點型值,並報告不能被轉換的所有剩餘數字。
● strtol():將字元串轉換為長整值,並報告不能被轉換的所有剩餘數字。
● strtoul():將字元串轉換為無符號長整型值,並報告不能被轉換的所有剩餘數字。
C語言實現:
#include
#include
void itoa (int n,char s[]);
//atoi 函數:將s轉換為整形數
int main(void )
{
int n;
char s[100];
printf("Input n: ");
scanf("%d",&n);
printf("the string : ");
itoa (n,s);
return 0;
}
void itoa (int n,char s[])
{
int i,j,sign;
if((sign=n)<0)//記錄符號
n=-n;//使n成為正數
i=0;
do{
s[i++]=n%10+'0';//取下一個數字
}
while ((n/=10)>0);//刪除該數字
if(sign<0)
s[i++]='-';
s[i]='