我应该检查以确保我的号码在基地。例如:如果基数为10,则只能使用基值的前10个字符(0-9)。 当我尝试运行我的代码时,我不断收到此消息" [错误]无效转换来自' std :: basic_string :: size_type {aka long long unsigned int}'到#char; char *' [-fpermissive]"有人可以帮帮我吗?
const string base_vals = "0123456789abcdefghijklmnopqrstuvwxyz";
string metadrome(string n, int base){
string new_base_vals= base_vals.substr(0,base);
string number=n;
string q = number.find_first_not_of(new_base_vals)
return q;
}
编辑:这不是完整的代码,只是我输入字符串n有困难的一小部分,而int base是用户输入的值
答案 0 :(得分:0)
std::string::find_first_not_of()
的返回值为size_t
。
您需要将呼叫更改为
size_t q = number.find_first_not_of(new_base_vals);
不要忘记更改metadrome()
的签名。