如何检查字符串中是否不存在char

时间:2018-10-20 07:04:21

标签: c++ arrays string char

假设我们让用户输入了一个字符串"william"的名称,然后用户输入了他们想要查找其索引的字符。

 using namespace std;
 string name;
 char characterToFind;
 cout << "Enter a name ";
 cin >> name;
 cout << "Enter a character to find ";
 cin >> characterToFind;

然后,我们要在name字符串数组中找到字符的索引。

for (int j = 0; j < name.length(); j++) {
    if (name[j] == characterToFind) {
        cout << "char is at index: " << j << endl;
    }
}

然后如何检查输入的字符在name字符串数组中是否不存在?我尝试执行以下操作:

if (characterToFind != name.find(characterToFind)) {
    cout<< "doesnt exist" << endl;
}

即使输入的字符存在于name字符串数组中,if语句也总是看起来是真的,并且运行代码。

1 个答案:

答案 0 :(得分:0)

我的方法的问题是我正在做的是,在if条件下,我正在检查's'char与数组的索引位置。

相反,这样做:

CDbl

这正在检查字符输入是否等于不存在的位置!的确如此,因此它告诉用户输入的字符不存在。