1. 程式人生 > >計算一個字串中包含子串的個數

計算一個字串中包含子串的個數

需要用到包含在標頭檔案cstring中的strstr函式,該函式接收兩個char*型別的引數。如strstr(*str,*res),該函式返回值res第一次出現在str中的地址,如果沒找到則返回NULL。

#include<iostream>
#include<cstring>
using namespace std;
int main()
{
    char* str="abcddf232abcdfji399abcdkk";
    char* res="abcd";
    int count=0;
    char* p;
    while(*str!='\0'){
        p=strstr(str,res);<span style="white-space:pre">	</span>//該函式返回值為res第一次出現在str中的地址,如果沒找到返回NULL

        if(p!=NULL){
            str=p;
            count++;
            str=str+strlen(res);
        }
        else{
            break;
        }
    }
    cout<<count<<endl;
    return 0;
}