s.find(c)
如果 char c 不在字符串中,应该返回什么。我的意思是它在任何地方都有描述,因为 c++ 文档通常不会说最重要的事情。
编辑:更清楚: find 返回我们正在寻找的字符的索引,如果它(字符)不存在怎么办?
std::string::npos
. 但通常使用更好std::find
,因为返回s.end()
和迭代器优于索引。
当字符不在字符串中时,std::string::npos
返回一个特殊的索引值。
size_t index = s.find(c);
if (index == string::npos)
cout << "not found" << endl;
else
cout << "found at " << index << endl;
可以在此处找到更多详细信息和示例: