C++中如何识别汉字

本文介绍了在C++中如何处理GB2312编码的汉字,涉及ASCII、DBCS、UNICODE字符集,以及在不同编译选项下的处理方式,并提供了判断汉字的简单方法和示例代码。
摘要由CSDN通过智能技术生成

本文是菜鸟科普文章,高手接分

在处理套打程序时用到TextOut,但TextOut无法自动换行,只好动手写代码,可是处理到汉字部分时卡住了,搜索网上判断汉字的帖子,都语焉不详,经过一下午的研究,终于整理出一个简单的教程。

其实判断汉字的代码很简单,简单到只有一行就可以了,

但不理解汉字编码的基础,这一行代码却万万无法理解。

常用的字符编码有以下三种:

                <script type="text/javascript"> </script><script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script>
1、ASCII 只支持英文,全部为8位
2、DBCS  支持英文和中文,但中文需要两个字节(16位)
3、UNICODE 支持英文和中文,英文和中文都需要两个字节

 

ASCII是DOS时代的,无法支持中文。DBCS是Win9x支持的字符集。UNICODE是win2k和xp支持的字符集。
而汉字的编码目前有GB2312-1980和GB18030-2000,GB2312就是DBCS类型的汉字编码,GB18030就是UNICODE的汉字编码,当然GB18030兼容GB2312,也就是说GB18030也支持DBCS的字符处理方式。虽然GB18030是2000年后强制执行的国家标准,但目前

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值