C实现统计字符串中中文汉字的个数
时间: 2024-02-18 22:05:19 浏览: 123
C#统计字符串里中文汉字个数的方法
可以通过遍历字符串中的每个字符,判断其是否为汉字来实现统计中文汉字个数的功能。以下是一个使用C语言实现的示例代码:
```c
#include <stdio.h>
#include <string.h>
#include <locale.h>
int is_chinese(char c) {
return (c >= 0x4E00 && c <= 0x9FA5); // 判断是否为中文字符的范围
}
int count_chinese(const char* str) {
int count = 0;
for (int i = 0; i < strlen(str); i++) {
if (is_chinese(str[i])) {
count++;
}
}
return count;
}
int main() {
setlocale(LC_ALL, ""); // 设置本地化环境,支持中文字符
char str[] = "hello, 世界!";
int count = count_chinese(str);
printf("中文汉字个数:%d\n", count);
return 0;
}
```
输出结果为:
```
中文汉字个数:2
```
需要注意的是,为了支持中文字符,需要使用 `setlocale` 函数将本地化环境设置为支持中文字符的环境,否则会导致中文字符无法正确处理。
阅读全文