string.find()与string::npos
生活随笔
收集整理的這篇文章主要介紹了
string.find()与string::npos
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
C++: string 中find函數(shù)的用法以及string::npos的含義_linwh8的博客-CSDN博客_c++ npos
查找字符串a(chǎn)是否包含子串b,不是用strA.find(strB) > 0 而是 strA.find(strB) != string:npos
其中string:npos是個(gè)特殊值,說明查找沒有匹配
先說說string::npos參數(shù):
npos 是一個(gè)常數(shù),用來表示不存在的位置,類型一般是std::container_type::size_type 許多容器都提供這個(gè)東西。取值由實(shí)現(xiàn)決定,一般是-1,這樣做,就不會(huì)存在移植的問題了。
再來說說find函數(shù):
find函數(shù)的返回值是整數(shù),假如字符串存在包含關(guān)系,其返回值必定不等于npos,但如果字符串不存在包含關(guān)系,那么返回值就一定是npos。
if (a.find(b) != string::npos)
{
cout << "Yes!" << endl;
}
else { cout << "No!" << endl;
}
總結(jié)
以上是生活随笔為你收集整理的string.find()与string::npos的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 空指针赋值崩溃
- 下一篇: socket编程中read()、writ