itoa函式 整數轉為字串

2021-06-09 16:19:08 字數 2005 閱讀 6706

itoa是廣泛應用的非標準c語言擴充套件函式。由於它不是標準

c語言函式

,所以不能在所有的

編譯器中使

itoa介面

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

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

int value 被轉換的整數,char *string 轉換後儲存的

字元陣列

,int radix 轉換進製數,如2,8,10,16 進製等

標頭檔案:

itoa操作使用

程式例:

#include

#include

int main()

/* 實現itoa函式的

源***/

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

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

/* 逆序 */

c語言程式

while(unum);

str[i]='\0';

/* 轉換 */

if(str[0]=='-') k=1; /* 十進位制負數 */

else k=0;

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

char temp;

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

return str;

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

#include

#include

int main(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 of various

* sizes to strings in various radixes.

*/#include

#include

void main( void )

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

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

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

char str[255];

sprintf(str, "%x", 100); //將100轉為16進製表示的字串。

整數轉換為字串(itoa)

字串可以轉換為整型,對應的整型也可以轉化為字串。來看看吧 題目 程式設計實現將整型數值轉換為字串。char my itoa int value,char buffer,int radix 引數說明 示例 value 10 radix 2 string 1010 不考慮value 為負數。解題思路 這...

把字串轉為整數

方案一 int stringtoint1 char string 此 就是大多數人能想到的,但這個 無法完成較為複雜的字串轉換,比如有字母巢狀是輸出的就是隨機值,另外沒有檢查字串是否是空指標,return number 方案二 int stringtoint2 char string 次 雖然解決空...

python 把字串轉為整數

如果我們需要把python的字串物件轉換為整數物件,我們需要用到int方法。比如 ainfo 222 print int ainfo 輸出的結果是222。然後我們檢視下ainfo現在的型別,通過type方法檢視下,發現是 而如果ainfo fefew22 print int ainfo 我們看下結果...