string1.find(string2)函数

string str1, str2;
char c;
str1.find(str2);//从串str1中查找时str2,返回str2中首个字符在str1中的最其前面的地址,找不到就是返回-1

str1.find(str2,5);//从str1的第5个字符开始查找str2

str1.find(c);//在str1中查找字符o并返回第一个查找到的地址

str1.find("str2",2 , 2);//从str1中的第二个字符开始查找of big的前两个字符

用法

找str1里面有几个str2

include

include

using namespace std;

int main() {

char str[100] = { 0 };
char substr[100] = { 0 };

cin.getline(str, sizeof(str));
cin.getline(substr, sizeof(substr));

int count = 0;

//转化为字符串
string str1(str);
string str2(substr);
 
int i=0;
//从str1下标i开始查找str2
while(str1.find(str2,i)!=-1){
    //如果找得到,计数加1
    count++;
    //i从找到的位置,后移一位,再继续找
    i=str1.find(str2,i)+1;
}

cout << count << endl;

return 0;

}

posted @ 2022-04-04 18:00  幽默的楚渔  阅读(173)  评论(0编辑  收藏  举报