天天看點

字元串中尋找漢字

  我們都知道,字元串中的每個字元都占一個位元組,但是漢字不同,它占兩個位元組。而且第一個位元組的高位為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;//不存在漢字
	}	
}
           

測試結果:

字元串中尋找漢字

轉載于:https://blog.51cto.com/10810429/1766630