C ++将字符串元素与int进行比较

时间:2018-04-24 07:57:17

标签: c++ c++11

我的数字位于字符串变量中。 我想检查它的每个元素是否等于某个值,所以我使用 for loop 来遍历每个元素并使用if:

        int zera = 0, jedynki = 0;
        for (int i = 0; i < liczba.length(); i++) {
            if (liczba[i] == 0) zera ++;
            else if (liczba[i] == 1) jedynki ++;
        }

liczba 是一个字符串。

我现在知道我无法做到这一点。我试图将此 int 转换为 char ,但仍然没有发生任何事情。 这里有什么问题?我该怎么办?

2 个答案:

答案 0 :(得分:5)

您将intchar

进行比较

应该是:

if (liczba[i] == '0') {}
else if (liczba[i] == '1') {}

答案 1 :(得分:1)

应该使用

if (liczba[i] == '0') 

或使用atoi

if (atoi(liczba[i]) == 0)