在下面的代碼錯誤:從「字符」無效的轉換爲「爲const char *
#include <stdlib.h> //atoi
#include <string>
using namespace std;
namespace roman
{
string convert(int input)
{
string inputStr = to_string(input);
if(inputStr.size()==4)
{
return string(atoi(inputStr[0]), 'M')+convert(stoi(inputStr.substr(1, npos)));//error here
}
}
}
我收到名義誤差在return
線。我認爲它與atoi功能有關。它需要一個const char*
作爲輸入值。我需要知道如何將inputStr
中的第一個字符變成const char*
。我嘗試追加.c_str()
到inputStr[0]
的末尾,但那給了我錯誤request for member c_str which is of non-class type char
。任何人有一些想法?
錯誤信息非常清楚。在C++上獲取[關於C++的好書](http://stackoverflow.com/questions/388242/the-definitive-c-book-guide-and-list),並閱讀它。 –