检查字符串是否是中文

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/kongshuai19900505/article/details/82855972

检查字符串是否是中文

/*
汉字是双字节的编码格式!   
汉字的第一字节:是从0xB0   开始编码   
汉字的第二字节:是从0xA1   开始编码   
有了以上的了解,就不难识别出是中文,还是其他的编码!   
程序中只需要判断(   第一字节>=0xB0   &&   第二字节>=0xA1   )

*/
int is_chinese(const char *str)//返回0:无中文,返回1:有中文
{
	char c;
	while(1)
	{
		c=*str++;
		if (c==0)
			break;  //如果到字符串尾则说明该字符串没有中文字符
		if (c&0x80)        //如果字符高位为1且下一字符高位也是1则有中文字符
			if (*str & 0x80) 
				return 1;
	}
	return 0;
}

猜你喜欢

转载自blog.csdn.net/kongshuai19900505/article/details/82855972