对不起,我应该记得这台机器绝对是非标准的,插入了各种非标准的libc实现用于学术目的;-)
正如itoa()几个有用的评论者所提到的那样,确实是非标准的,最好使用sprintf(target_string,"%d",source_int)或(更好的是,因为缓冲区溢出是安全的)snprintf(target_string, size_of_target_string_in_bytes, "%d", source_int)。我知道它不是那么简洁或酷itoa(),但至少你可以写一次,随处运行(tm);-)
这是旧的(编辑过的)答案
你说的是默认gcc libc不包括itoa(),就像其他几个平台一样,因为它在技术上不是标准的一部分。请点击此处获取更多信息。请注意,你必须#include
当然,你已经知道这一点,因为你想使用 itoa()大概使用它在其他平台上后,在Linux上,但...代码(从上面的链接被盗)将如下所示:
例/* itoa example */#include #include int main (){
int i;
char buffer [33];
printf ("Enter a number: ");
scanf ("%d",&i);
itoa (i,buffer,10);
printf ("decimal: %s\n",buffer);
itoa (i,buffer,16);
printf ("hexadecimal: %s\n",buffer);
itoa (i,buffer,2);
printf ("binary: %s\n",buffer);
return 0;}
输出:Enter a number: 1750
decimal: 1750
hexadecimal: 6d6
binary: 11011010110
希望这可以帮助!