每个例子:
string:1 2 3 4 5
我想创建一个for循环来比较每个字符串位置和用户提供的int。我试过了
if(atoi(string [i])== value)
但这似乎不起作用,我需要改变它吗? (将int转换为字符串,然后是strcmp?) 提前致谢
答案 0 :(得分:0)
我假设您在C ++中这样做。
atoi
以const char*
作为参数,但您将其传递给char。你需要做的是这样的事情:
std::string str(1, string[i]);
if(atoi(str.c_str()) == value)
...
或者你可以完全跳过atoi而只是做
if(string[i]-48 == value)
...
这是有效的,因为数字从ascii值48开始,而你一次只检查一个字符。
免责声明:我还假设string
是char [],因此string[i]
是char