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;
}