string s = "I Like C++ Tutorial";cout s.find_last_of("Like"); 我知道find_last_of返回匹配的最后一个字符,但是,它返回16,这是教程中字母i的位置,但我很困惑,因为我正在寻找最后一个位置,不是我,我试图
string s = "I Like C++ Tutorial"; cout << s.find_last_of("Like");
我知道find_last_of返回匹配的最后一个字符,但是,它返回16,这是教程中字母i的位置,但我很困惑,因为我正在寻找最后一个位置,不是我,我试图从字符串中删除i.它按我的预期返回5.但问题是为什么它会返回16?
find_last_of
查找最后一个字符,该字符等于给定字符序列中的一个字符.
字符序列是“喜欢”.最后一个L位于位置3,最后一个位于位置16,最后一个位于位置4,最后一个位于位置5.因此它返回16,这些值中最大的.
如果字符序列是“喜欢”而不是“喜欢”,它将返回18,因为最后一个l位于第18位.
如果字符序列中没有与字符串中的任何字母匹配的字母,则返回npos
.