c語言中,函式itoa有什麼功能,怎麼用

時間 2022-02-02 22:35:07

1樓:鮑馨有曜

itoa是廣泛應用的非標準c語言擴充套件函式。由於它不是標準c語言函式,所以不能在所有的編譯器中使

用。但是,大多數的編譯器(如windows上的)通常在標頭檔案中包含這個函式。在中與之有相反功能的函式是atoi。功能:把一整數轉換為字串。

用法char

*itoa(int

value,

char

*string,

intradix);

標頭檔案:

程式例:

#include

#include

intmain()

/*實現itoa函式的源**

*/char

*myitoa(int

num,char

*str,int

radix)

else

unum=(unsigned)num;

/*其他情況

*//*

逆序*/

dowhile(unum);

str[i]='\0';

/*轉換

*/if(str[0]=='-')

k=1;

/*十進位制負數

*/else

k=0;

/*將原來的「/2」改為「/2.0」,保證當num在16~255之間,radix等於16時,也能得到正確結果

*/for(j=k;j<=(i-1)/2.0+k;j++)

return

str;

}itoa的第三個引數用於將數字轉換成不同的進位制。舉個例子:

#include

#include

intmain(void)

輸出結果:

integer

=12345

string

=12345

--說明12345的十進位制表示就是12345

integer

=12345

string

=3039

——說明12345的十六進位制表示是0x3039

但是要注意,itoa並不是一個標準的c函式,它是windows特有的,如果要寫跨平臺的程式,請用sprintf。

用幾進製表示吧:)

msdn的例子

example

/*itoa.c:

this

program

converts

integers

ofvarious

*sizes

tostrings

invarious

radixes.

*/#include

#include

void

main(

void

)output

string

ofinteger

3445

(radix

10):

3445

string

ofinteger

3445

(radix

16):

0xd75

string

ofinteger

3445

(radix

2):110101110101

string

oflong

int-344115

(radix

16):

0xfffabfcd

string

ofunsigned

long

1234567890

(radix

16):

0x499602d2

指定要轉換的進位制的基數,其值好象在1--36之間都可以

這個不是c標準庫中的函式,而是windows平臺下擴充套件的,標準庫中有sprintf,功能比這個更強,用法跟printf類似:

char

str[255];

sprintf(str,

"%x",

100);

//將100轉為16進製表示的字串。

2樓:匿名使用者

將整數value轉換成字串存入string

3樓:匿名使用者

功 能: 把一整數轉換為字串

用 法: char *itoa(int value, char *string, int radix);

詳細解釋:itoa是英文integer to string a(將整形數轉化為一個字串,並將值儲存在a中)

的縮寫.其中value為要轉化的整數, radix是基數的意思,即先將value轉化為幾進位制的數,之後在儲存在a 中.

作用:實現數制之間的轉化

比較:ltoa,其中l是long integer(長整形數)備註:該函式的標頭檔案是"stdlib.h"

程式例:

#include

#include

int main(void)

c語言中itoa()和ltoa()函式分別是什麼意思

4樓:花心彩妝悠

itoa() 功能:把一整數轉換為字串

ltoa函式 功能:(進位制轉換函式)把長整形數轉換為任意進位制的字串的函式

5樓:匿名使用者

itoa是廣泛應用的非標準c語言擴充套件函式。由於它不是標準c語言函式,所以不能在所有的編譯器中使 用。但是,大多數的編譯器(如windows上的)通常在標頭檔案中包含這個函式。

在中與之有相反功能的函式是atoi。功能:把一整數轉換為字串。

6樓:匿名使用者

一、atoi()——把字串轉換成整型數

c實現:

#include

#include

int atoi (char s);

int main(void )

int atoi (char s)

二、itoa()——把一整數轉換為字串

通過把整數的各位上的數字加「0」轉換成char型別並存到字元陣列中。但是要注意,需要採用字串逆序的方法

c語言實現:

#include

#include

void itoa (int n,char s);

//atoi 函式:將s轉換為整形數

int main(void )

void itoa (int n,char s)while ((n/=10)>0);//刪除該數字if(sign<0)

s[i++]='-';

s[i]='\0';

for(j=i;j>=0;j--)//生成的數字是逆序的,所以要逆序輸出

printf("%c",s[j]);

}是int 轉string型別的一個函式

c語言的函式「itoa」有什麼功能?

7樓:匿名使用者

功 能: 把一整數轉換為字串

用 法: char *itoa(int value, char *string, int radix);

詳細解釋:itoa是英文integer to string a(將整形數轉化為一個字串,並將值儲存在a中)

的縮寫.其中value為要轉化的整數, radix是基數的意思,即先將value轉化為幾進位制的數,之後在儲存在a 中.

作用:實現數制之間的轉化

比較:ltoa,其中l是long integer(長整形數)備註:該函式的標頭檔案是"stdlib.h"

程式例:

#include

#include

int main(void)

8樓:翁順桐映寒

把一個整形數轉化成字串

12345->"12345"

c語言 求itoa函式的原型以及itoa函式的用法

9樓:

itoa 將任意型別的數字轉換為字串#include

#include

int main(void)

atoi (表示 ascii to integer)是把字串轉換成整型數的一個函式

#include

#include

int main(void)

10樓:奶茶普拉斯

11樓:魔鬼小波的丶

void itoa (int n,char s)while ((n/=10)>0);//刪除該數字if(sign<0)

s[i++]='-';

s[i]='\0';

for(j=i;j>=0;j--)//生成的數字是逆序的,所以要逆序輸出

printf("%c",s[j]);}

c語言中有關itoa函式的問題

12樓:

二個程式在vs中編譯都會輸出integer =5 string =5;

我個人覺得第一個程式可能會出現問題,這句 char *string; //指標

一般不會有人直接定義一個指標而不初始化,所以這裡建議下你不要這麼用,具體原因學下去你就知道了。

13樓:

char *itoa( int value, char *string,int radix);

原型說明:

value:欲轉換的資料。

string:目標字串的地址。

radix:轉換後的進位制數,可以是10進位制、16進位制等。

函式原型string為字元指標變數,如果你非要定義成字元型,需要自己重新定義函式。

14樓:

第一個是錯誤**——試圖給一個懸浮指標string拷貝一個字串。

第二個是對的,但string是char型變數,雖通過指標(&string)操作,也只能接收一個字元。

15樓:匿名使用者

你編譯的結果就這樣? itoa只是轉換,沒改變數值啊

c語言中清屏函式是什麼,C語言中清屏函式是什麼?

莊生曉夢 c語言中清屏函式是為清除螢幕上的輸出功能,用法是 void clrscr void 程式例 include int main int i clrscr for i 0 i 20 i cprintf d r n i cprintf r npress any key to clear scre...

c語言中,函式返回值怎麼用,c語言中呼叫函式如何返回多個值?

斑駁丶4129仉 一般用0表示函式執行正確,正常返回 用負數表示函式執行出錯,每個值可以提前定義,根據出錯的值進行出錯處理。誠心為您解答每一個問題!如您滿意請採納最佳!如有疑問請繼續追問!您的好評是我們前進的動力,相互幫助,一起進步! return後接一個值。在呼叫這個函式的函式裡面,呼叫它的時候希...

C語言中的sprint函式問題,C語言中迴圈問題

好程式設計師 sprintf函式原型為 int sprintf char str,const char format,作用是格式化字串,具體功能如下所示 1 將數字變數轉換為字串。2 得到整型變數的16進位制和8進位制字串。3 連線多個字串。舉例如下所示 1 char str 256 2 int d...