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...