当前位置 : 主页 > 编程语言 > c++ >

c – std :: find_last_of实际上是如何工作的?

来源:互联网 收集:自由互联 发布时间:2021-06-23
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.

网友评论