一种方法是简单地使用strtok计数器.但是,这将修改原始字符串.
另一种方法是strchr在循环中使用,如下所示:
int count = 0;
char *ptr = s;
while((ptr = strchr(ptr, ' ')) != NULL) {
count++;
ptr++;
}
Run Code Online (Sandbox Code Playgroud)
如果您有多个分隔符,请使用strpbrk:
while((ptr = strpbrk(ptr, " \t")) != NULL) ...
Run Code Online (Sandbox Code Playgroud)