爲什麼在此代碼atoi()
功能不能正常工作,爲什麼編譯器把這個錯誤:爲什麼atoi函數不能將const char *轉換爲int?
initializing argument 1 of `int atoi(const char*)'
我的代碼如下:
#include <iostream.h>
#include <stdlib.h>
int main()
{
int a;
char b;
cin >> b;
a = atoi(b);
cout << "\na";
return 0;
}
你給它一個'char' ... – chris
如果你不知道'char'和'爲const char *的區別',你應該退後一步,閱讀一本很好的入門書。類型是基本的,對它們有一個牢固的理解是很重要的。 –
'atoi'是一個糟糕的選擇,因爲無法判斷它是否失敗。我最喜歡的是'boost :: lexical_cast'。 – chris