c语言获得字符串中字符串的数量
时间: 2023-12-12 20:05:42 浏览: 97
在C语言中,可以通过遍历字符串的每个字符,来获得字符串中子字符串的数量。具体实现方法如下:
1. 定义一个计数器变量count,用于记录子字符串的数量。
2. 遍历字符串中的每个字符,如果当前字符是子字符串的分隔符(比如空格、逗号等),则将计数器count加1。
3. 最后返回计数器count的值即可。
下面是一个示例代码:
```
#include <stdio.h>
#include <string.h>
int getSubstringCount(char *str, char *delimiter) {
int count = 1; // 初始化为1,因为最后一个子字符串后面没有分隔符
int len = strlen(str);
int delimLen = strlen(delimiter);
for (int i = 0; i < len - delimLen + 1; i++) {
if (strncmp(str + i, delimiter, delimLen) == 0) {
count++;
}
}
return count;
}
int main() {
char str[] = "hello world, this is a test";
char delimiter[] = " ";
int count = getSubstringCount(str, delimiter);
printf("The number of substrings is: %d\n", count);
return 0;
}
```
该示例代码中,getSubstringCount函数接受两个参数,分别是要处理的字符串和子字符串的分隔符。函数内部使用了strncmp函数来比较字符串,从而判断当前字符是否是分隔符。最后返回计数器count的值即可。
阅读全文