c语言中如何判断汉字
c语言中如何判断汉字
/*
int IsChinese( int ch )
*/
int IsChinese( ch )
int ch;
{
return ( ch & 0x80 );
}
通过位运算来判断,很厉害!因为我基本上没有用过位运算,0x80就是二进制的10000000 。呵呵,又学到了新知识,很高兴,虽然很多作业没写。......
原帖是:http://www.ciscofan.com/dz6/viewthread.php?tid=24620
另外,汉字机内码在计算机的表达方式的描述是,使用二个字节,每个字节最高位一位为1。计算机中, 补码第一位是符号位, 1 表示为 负数, 所以 汉字机内码的每个字节表示的十进制数都是负数,结果要除以2,不要忘了。因为汉字占用两个字节。
这样一来就可以用字符数组来存放汉字串,然后通过判断他的每一个字节是否小于零,当然也可以用上面的那个函数。
浙公网安备 33010602011771号