您好,登錄后才能下訂單哦!
C語言中實現(xiàn)itoa函數(shù)的實例
一、原型:
char *itoa( int value, char *string,int radix);
二、函數(shù)說明:
三、函數(shù)簡單實現(xiàn):
#include <iostream> #include <string> using namespace std; char* My_itoa(int value,char str[],int radix) { char temp[33]; char *tp = temp; int i; unsigned v; int sign; char *sp; if(radix > 36 || radix < 1) return 0; sign = (radix == 10 && value < 0); //十進制負數(shù) if(sign) v = -value; else v = (unsigned)value; while(v || tp == temp) //轉化操作 { i = v % radix; v = v / radix; if(i < 10) *tp++ = i + '0'; else *tp++ = i + 'a' - 10; } if(str == 0) str = (char*)malloc((tp - temp) + sign + 1); sp = str; if(sign) //是負數(shù)的話把負號先加入數(shù)組 *sp++ = '-'; while(tp > temp) *sp++ = *--tp; *sp = 0; return str; } int main() { long int num; int radix; //輸入的幾進制表示 char str[256]; cout<<"請輸入整數(shù)和進制數(shù):"; cin>>num>>radix; My_itoa(num,str,radix); cout<<"整數(shù)轉換為字符串后:"; cout<<str<<endl; return 0; }
如有疑問請留言或者到本站社區(qū)交流討論,感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!
免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內(nèi)容。