- #include <cstdio>
- #include <cstring>
- #include <cstdlib>
- int subStrCount(const char* srcStr,const char* dstStr)
- {
- if(NULL == srcStr || NULL == dstStr)
- {
- return -1;
- }
- int ret = 0;
- int dstlen = strlen(dstStr);
- int temp = 0;
- const char* dstHeader = dstStr;
- while(*srcStr != '\\0')
- {
- if(*srcStr == *dstStr)
- {
- ++temp;
- dstStr++;
- if(temp == dstlen)
- {
- ret++;
- }
- }
- else
- {
- temp = 0;
- dstStr = dstHeader;
- }
- srcStr++;
- }
- return ret;
- }
- int main()
- {
- const char* srcStr = "abcdefhdefjidfsdfs def";
- const char* dstStr = "def";
- int ret = subStrCount(srcStr,dstStr);
- if(-1 == ret)
- {
- exit(-1);
- }
- printf("the substring is %d times appeared\\n",ret);
- return 0;
- }
- //该片段来自于http://www.codesnippet.cn/detail/290820135432.html
来源: http://www.codesnippet.cn/detail/290820135432.html