假设我们让用户输入了一个字符串"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语句也总是看起来是真的,并且运行代码。
答案 0 :(得分:0)
我的方法的问题是我正在做的是,在if条件下,我正在检查's'char与数组的索引位置。
相反,这样做:
CDbl
这正在检查字符输入是否等于不存在的位置!的确如此,因此它告诉用户输入的字符不存在。