如何用C语言统计中文的字符数

如题所述

C中的汉字用“机内码”,一个汉字两字节,最高位都是1,所以可以用下列代码求得一个字符串里汉字的个数:

//#include "stdafx.h"//If the vc++6.0, with this line.
#include "stdio.h"
int main(void){
char a[]="12我34们56都7是来自五a湖c四de海bfg";
int i,sum;
for(sum=i=0;a[i];i++)
if(a[i]<0) sum++;//最高位为1(负数)的是一个汉字的一半
printf("There are %d Chinese characters in this string.\n",sum/2);//输出汉字总数
return 0;
}
温馨提示:答案为网友推荐,仅供参考
相似回答