在C++编程语言中,对于中文字符的处理方式有很多种,开发人员可以根据自己不同的需求来选择一种适合自己的方式。比如今天为大家介绍的C++输入输出汉字的实现方法,就是其中一个比较简单的方式。

创新互联建站专注为客户提供全方位的互联网综合服务,包含不限于网站建设、做网站、阿克陶网络推广、小程序开发、阿克陶网络营销、阿克陶企业策划、阿克陶品牌公关、搜索引擎seo、人物专访、企业宣传片、企业代运营等,从售前售中售后,我们都将竭诚为您服务,您的肯定,是我们最大的嘉奖;创新互联建站为所有大学生创业者提供阿克陶建站搭建服务,24小时服务热线:18980820575,官方网址:www.cdcxhl.com
C++里面用L宏的时候只是说是宽字符,但是并不一定是Unicode,也就是说具体使用什么字符集要程序员自己去设定,这就是imbue的作用,那你文件里不能输入汉字也是这个问题,你只要象下面一样设置下就可以了:
- in.imbue(locale("chs"));
 - in>>text;
 - out.imbue(locale("chs"));
 - out<
 
这样C++理论上可以处理任何的字符集.
完整修改的C++输入输出汉字代码如下:
你是vc++6.0吧,那你只需要先设置后打开文件就可以了,这是一个已知的BUG;代码如下:
- #define _UNICODE
 - #include
 - #include
 - using namespace std;
 - void main()
 - {
 - wchar_t text=L'我'; //这是调试看text没问题,就是“我”字
 - wofstream out;
 - wifstream in;
 - in.imbue(locale("chs"));
 - in.open("input.txt");
 - in>>text;
 - in.close();
 - out.imbue(locale("chs"));
 - out.open("output.txt");
 - out<
 - out.close();
 - wcout.imbue(locale("chs")); //如果把上面两行去掉,下面是对的
 - //需要设置imbue才能输出中文字符,不过还是不懂imbue是干什么的?
 - wcout <<"this is "<
 - system("PAUSE");
 - }
 
以上就是对C++输入输出汉字的相关操作介绍。
【编辑推荐】
                新闻标题:C++输入输出汉字具体应用技巧分享
                
                分享URL:http://www.csdahua.cn/qtweb/news25/257925.html
            
网站建设、网络推广公司-快上网,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 快上网