通常中英文混排常常需要去判断一个字符串是以什么类型结尾的,用以以后的处理需要。
代码如下(.h):
/*
函数名:CheckStringEndType
功 能:判断字符串的结尾类型
参 数:_str [in] 传入的字符串
返回值:
0 以ASCII码结尾
1 以汉字的高字节结尾
2 以汉字的低字节结尾
*/
int CheckStringEndType(string &_str);
.cpp实现:
int CheckStringEndType(string &_str)
{
int iLenth = _str.length();
if (iLenth == 0)
{
return 0;
}
string strTemp = _str.substr(0);
while (strTemp.length() >= 0)
{
iLenth = strTemp.length();
if (iLenth == 0)
{
return 2;
}
else if (iLenth == 1)
{
if ((int)strTemp.at(0) >= 0 && (int)strTemp.at(0) <= 128)
{
return 0;
}
else if (strTemp.at(0) < 0)
{
return 1;
}
}
if ((int)strTemp.at(0) >= 0 && (int)strTemp.at(0) <= 128)
{
strTemp = strTemp.substr(1);
}
else if ((int)strTemp.at(0) < 0)
{
strTemp = strTemp.substr(2);
}
}
}