比较字符串的位置和整数

时间:2015-04-14 20:14:24

标签: c string int

每个例子:

string:1 2 3 4 5

我想创建一个for循环来比较每个字符串位置和用户提供的int。我试过了

if(atoi(string [i])== value)

但这似乎不起作用,我需要改变它吗? (将int转换为字符串,然后是strcmp?) 提前致谢

1 个答案:

答案 0 :(得分:0)

我假设您在C ++中这样做。

atoiconst 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