c語言函數(shù)itoa頭文件 c語言函數(shù)的頭文件

c語言的函數(shù)“itoa”有什么功能?

創(chuàng)新互聯(lián)公司堅(jiān)持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:成都做網(wǎng)站、網(wǎng)站制作、成都外貿(mào)網(wǎng)站建設(shè)、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿足客戶于互聯(lián)網(wǎng)時(shí)代的馬尾網(wǎng)站設(shè)計(jì)、移動(dòng)媒體設(shè)計(jì)的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!

能:

把一整數(shù)轉(zhuǎn)換為字符串

法:

char

*itoa(int

value,

char

*string,

int

radix);

詳細(xì)解釋:itoa是英文integer

to

string

a(將整形數(shù)轉(zhuǎn)化為一個(gè)字符串,并將值保存在a中)

的縮寫.其中value為要轉(zhuǎn)化的整數(shù),

radix是基數(shù)的意思,即先將value轉(zhuǎn)化為幾進(jìn)制的數(shù),之后在保存在a

中.

作用:實(shí)現(xiàn)數(shù)制之間的轉(zhuǎn)化

比較:ltoa,其中l(wèi)是long

integer(長(zhǎng)整形數(shù))

備注:該函數(shù)的頭文件是"stdlib.h"

程序例:

#include

stdlib.h

#include

stdio.h

int

main(void)

{

int

number

=

12345;

char

string[25];

itoa(number,

string,

10);///number為輸入的整數(shù),string為輸出轉(zhuǎn)換的字符串,10

為以十進(jìn)制輸出

printf("integer

=

%d

string

=

%s\n",

number,

string);

return

0;

}

c語言中,函數(shù)itoa有什么功能,怎么用?

itoa是廣泛應(yīng)用的非標(biāo)準(zhǔn)C語言擴(kuò)展函數(shù)。由于它不是標(biāo)準(zhǔn)C語言函數(shù),所以不能在所有的編譯器中使 用。但是,大多數(shù)的編譯器(如Windows上的)通常在stdlib.h頭文件中包含這個(gè)函數(shù)。在stdlib.h中與之有相反功能的函數(shù)是atoi。功能:把一整數(shù)轉(zhuǎn)換為字符串。

用法

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

頭文件: stdlib.h

程序例:

#include stdlib.h

#include stdio.h

int main()

{

int number = 123456;

char string[25];

itoa(number, string, 10);

printf("integer = %d string = %s\n", number, string);

return 0;

}

/* 實(shí)現(xiàn)itoa函數(shù)的源代碼 */

char *myitoa(int num,char *str,int radix)

{

/* 索引表 */

char index[]="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";

unsigned unum; /* 中間變量 *

int i=0,j,k;

/* 確定unum的值 */

if(radix==10num0) /* 十進(jìn)制負(fù)數(shù) */

{

unum=(unsigned)-num;

str[i++]='-';

}

else unum=(unsigned)num; /* 其他情況 */

/* 逆序 */

do {

str[i++]=index[unum%(unsigned)radix];

unum/=radix;

}while(unum);

str[i]='\0';

/* 轉(zhuǎn)換 */

if(str[0]=='-') k=1; /* 十進(jìn)制負(fù)數(shù) */

else k=0;

/* 將原來的“/2”改為“/2.0”,保證當(dāng)num在16~255之間,radix等于16時(shí),也能得到正確結(jié)果 */

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

{

num=str[j];

str[j]=str[i-j-1+k];

str[i-j-1+k]=num;

}

return str;

}

itoa的第三個(gè)參數(shù)用于將數(shù)字轉(zhuǎn)換成不同的進(jìn)制。舉個(gè)例子:

#include stdlib.h

#include stdio.h

int main(void)

{

int number = 12345;

char string[25];

itoa(number, string, 10); //按十進(jìn)制轉(zhuǎn)換

printf("integer = %d string = %s\n", number, string);

itoa(number, string, 16); //按16進(jìn)制轉(zhuǎn)換

printf("integer = %d string = %s\n", number, string);

return 0;

}

輸出結(jié)果:

integer = 12345 string = 12345 --說明12345的十進(jìn)制表示就是12345

integer = 12345 string = 3039 ——說明12345的十六進(jìn)制表示是0x3039

但是要注意,itoa并不是一個(gè)標(biāo)準(zhǔn)的C函數(shù),它是Windows特有的,如果要寫跨平臺(tái)的程序,請(qǐng)用sprintf。

用幾進(jìn)制表示吧:)

MSDN的例子

Example

/* ITOA.C: This program converts integers of various

* sizes to strings in various radixes.

*/

#include stdlib.h

#include stdio.h

void main( void )

{

char buffer[20];

int i = 3445;

long l = -344115L;

unsigned long ul = 1234567890UL;

_itoa( i, buffer, 10 );

printf( "String of integer %d (radix 10): %s\n", i, buffer );

_itoa( i, buffer, 16 );

printf( "String of integer %d (radix 16): 0x%s\n", i, buffer );

_itoa( i, buffer, 2 );

printf( "String of integer %d (radix 2): %s\n", i, buffer );

_ltoa( l, buffer, 16 );

printf( "String of long int %ld (radix 16): 0x%s\n", l, buffer );

_ultoa( ul, buffer, 16 );

printf( "String of unsigned long %lu (radix 16): 0x%s\n", ul, buffer );

}

Output

String of integer 3445 (radix 10): 3445

String of integer 3445 (radix 16): 0xd75

String of integer 3445 (radix 2): 110101110101

String of long int -344115 (radix 16): 0xfffabfcd

String of unsigned long 1234567890 (radix 16): 0x499602d2

指定要轉(zhuǎn)換的進(jìn)制的基數(shù),其值好象在1--36之間都可以

這個(gè)不是C標(biāo)準(zhǔn)庫中的函數(shù),而是Windows平臺(tái)下擴(kuò)展的,標(biāo)準(zhǔn)庫中有sprintf,功能比這個(gè)更強(qiáng),用法跟printf類似:

char str[255];

sprintf(str, "%x", 100); //將100轉(zhuǎn)為16進(jìn)制表示的字符串。

請(qǐng)問C語言中的"itoa"的頭文件是什么?哪位高手幫一下忙.謝謝!

是把整型轉(zhuǎn)化成字符的函數(shù),我怎么學(xué)的時(shí)候老師沒說過捏,汗。。。

在C++中用itoa要包含什么頭文件?

在C++中用itoa()要包含的頭文件:# include stdio.h、# include stdlib.h

void main (void)

{

int num = 100;

char str[25];

itoa(num, str, 10);

printf("The number 'num' is %d and the string 'str' is %s. \n" ,

num, str);

}

itoa()函數(shù)有3個(gè)參數(shù):第一個(gè)參數(shù)是要轉(zhuǎn)換的數(shù)字,第二個(gè)參數(shù)是要寫入轉(zhuǎn)換結(jié)果的目標(biāo)字符串,第三個(gè)參數(shù)是轉(zhuǎn)移數(shù)字時(shí)所用的基數(shù)。

itoa并不是一個(gè)標(biāo)準(zhǔn)的C函數(shù),它是Windows特有的,如果要寫跨平臺(tái)的程序,請(qǐng)用sprintf。

網(wǎng)頁題目:c語言函數(shù)itoa頭文件 c語言函數(shù)的頭文件
標(biāo)題來源:http://bm7419.com/article14/dohghge.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供用戶體驗(yàn)、做網(wǎng)站、營(yíng)銷型網(wǎng)站建設(shè)、域名注冊(cè)、微信小程序手機(jī)網(wǎng)站建設(shè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

成都定制網(wǎng)站建設(shè)