c语言使用指针遍历字符串,求字符串的个数
时间: 2024-03-15 07:43:54 浏览: 93
可以使用指针来遍历字符串,并计算字符串的个数。以下是实现代码:
```
#include <stdio.h>
int main() {
char str[] = "hello world!"; // 定义一个字符串
char *p = str; // 定义一个指向字符串的指针
int count = 0; // 统计字符串的个数
while (*p != '\0') { // 遍历字符串,直到遇到结束符 '\0'
if (*p != ' ') { // 遇到非空格字符,将计数器加 1
count++;
while (*p != ' ' && *p != '\0') { // 跳过当前单词的所有字符
p++;
}
} else { // 遇到空格字符,指针向后移动一位
p++;
}
}
printf("字符串中有 %d 个单词\n", count);
return 0;
}
```
在这个实现中,我们首先定义了一个字符串 `str`,然后定义了一个指向字符串的指针 `p`,并将其初始化为指向字符串的首地址。接着,我们使用 `while` 循环遍历字符串,直到遇到字符串的结束符 '\0' 为止。在遍历过程中,我们使用一个计数器 `count` 统计字符串中单词的个数,如果遇到了非空格字符,就将计数器加 1,并跳过当前单词的所有字符;否则,就将指针向后移动一位。最后,输出计数器的值,即为字符串中单词的个数。
阅读全文