string的find函数
string的find函数是C++语言中字符串处理中一个十分常用的操作函数,它的功能可以用来查字符串中是否存在指定的某个子串,以及查子串所在的位置。在c++中,使用find函数操作字符串非常简单,只需要简单的传入两个参数即可。
这里介绍一下string的find函数,它的定义如下:
string Find(const string &str, const string &des, int start = 0);
调用find(string str, string des)函数时,实参str就是被查字符串,而des就是要查的子串;start是可选参数,表示从字符串的第几个字符开始查,如果不传入start参数,默认从0开始查。
如果函数成功到指定子串,函数就会返回子串的下标,表示子串的开始位置;如果字符串中不存在指定的子串,则函数会返回npos,表示字符串末尾的位置。
下面是一个关于string find函数的简单使用实例:
字符串复制函数#include <iostream>
#include <string>
using namespace std;
int main() {
    string str = "hello world";
    //从字符串str的0号下标处开始查字符串'world'
    size_t pos = str.find("world");
    cout << "pos = " << pos << endl;  //输出:pos = 6
    //从字符串str的3号下标处开始查字符串'world'
    pos = str.find("world", 3);
    cout << "pos = " << pos << endl; //输出:pos = 6
    //从字符串str的4号下标处开始查字符串‘world'
    pos = str.find("world", 4);
    cout << "pos = " << pos << endl; //输出:pos = npos
    return 0;
}
从上面代码可以看到,string find函数的基本用法是在被查的字符串从start位置开始查,如果能够到指定的子串,则返回指定子串开始的下标;如果查不到子串,则返回npos,表示字符串末尾的位置。
总之,string find函数是一个很实用的字符串处理函数,它的功能可以用来快速的查字符串中是否存在指定的子串,以及查子串的位置,它在C++语言字符串处理中占有相当重要的地位。