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;
}
温馨提示:答案为网友推荐,仅供参考