有人可以解釋爲什麼的atoi功能不nuber誰擁有超過9個位數的工作。
例如:的atoi功能不能正常工作
我輸入123456789,程序顯示123456789,但是當我輸入12345678901程序時說-519403114 ...感謝您的幫助。
int main()
{
int i;
char szinput [256];
printf ("Enter a Card Number:");
fgets(szinput,256,stdin);
i=atoi(szinput);
printf("%d\n",i);
getch();
return 0;
}
的atoi爲整數。當你需要比MAXINT更大的整數時,使用atol。 –
'atoi'用於'int',而不是「整數」。 「int」和「long」都是整數類型。 –
在大多數系統中,'int'和'long'的大小相同,因此您可能需要一個適用於較大類型的函數。 –