我们都知道,字符串中的每个字符都占一个字节,但是汉字不同,它占两个字节。而且第一个字节的高位为1,第二个字节的高位也为1.我们可以利用这个特点来判断字符串中是否含有汉字。
代码实现:
bool IsTrue(char* p)
{
while(*p)
{
if((*p&0x80) && (*(p+1)&0x80))//第一个和第二个字节的高位都为1
{
return true;
}
else
p++;
}
return false;
}
int main()
{
char *str = "inhgxj我kjh";
bool ret = IsTrue(str);
if(ret == true)
{
cout<<"have"<<endl;//存在汉字
}
else
{
cout<<"no have"<<endl;//不存在汉字
}
}测试结果:
本文出自 “一起去看星星” 博客,转载请与作者联系!
原文地址:http://10810429.blog.51cto.com/10800429/1766630