本帖最后由 luodewei 于 2015-1-27 12:37 编辑
我的语句如下,但实际调试中发现一部分中文也识别为英文了,难道不是大于0x80的都是中文字符吗?还是字库问题?
if ( CmpBuf[a] & 0x80)
{
linetext +=8; //16号字,中文
}
else
{
linetext +=16; //16号字,英文
}
搞定了,只需要比较第一位即可,高位大于0x80,低位则任意。
改正后如下:
if ( CmpBuf[a] & 0x80)
{
linetext +=16; //16号字,中文
a++;
}
else
{
linetext +=8; //16号字,英文
} |