當我編譯下面的代碼時,編譯器顯示了對itoa()函數的未定義引用。但是,當我搜索;我發現itoa()是標準的。爲什麼這樣?使用itoa()函數
#include <stdio.h>
#include<stdlib.h>
int main()
{
int i;
char buffer [33];
printf ("Enter a number: ");
scanf ("%d",&i);
itoa (i,buffer,10);
printf ("decimal: %s\n",buffer);
return 0;
}
不,沒有標準C'itoa'函數。它是一些庫實現的擴展。 –
爲什麼對某些編譯器有限制? –
這不是「限制」,它實際上不是C標準或任何其他公佈的標準的一部分。將字符串轉換爲整數的標準方法是[strtol函數](http://en.cppreference.com/w/c/string/byte/strtol)。 –