bool IsChineseGBKChr(const char * szTerm){
       if ((szTerm == NULL) || (strlen(szTerm) != 2))  return false;
       unsigned char Chr[2];
       Chr[0] = (unsigned char)szTerm[0];
       Chr[1] = (unsigned char)szTerm[1];
        return (((Chr[0] >= 0xB0) && (Chr[1] >= 0xA1) && (Chr[0] <= 0xF7) && (Chr[1]<= 0xFE)) ||
            ((Chr[0] >= 0x81) && (Chr[1] >= 0x40) && (Chr[0] <= 0xA0) && (Chr[1] <= 0xFE)) );
    }

 

图解:

 

 

参考资料:

1. http://blog.sina.com.cn/s/blog_6dae58b30100yt4q.html

2. http://baike.baidu.com/view/889058.htm

posted on 2012-10-17 17:20  yaozhaoyz  阅读(260)  评论(0编辑  收藏  举报