| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1462 人关注过本帖
标题:萌新求教
只看楼主 加入收藏
cwhEd
Rank: 2
等 级:论坛游民
威 望:1
帖 子:16
专家分:17
注 册:2018-8-14
结帖率:75%
收藏
已结贴  问题点数:10 回复次数:2 
萌新求教
各位大神,为什么用wchar_t可以输出英文字符和数字,但是却无法输出中文字符?
比如下面的代码
#include <wchar.h>
#include <locale.h>
int main()
{
wchar_t a=L'A';
setlocale(LC_ALL,"zh-CN");
putwchar(a);
wprintf(L"%lc",a);
return 0;
}
如果是英文或者数字是可以正常输出的,但如果把A换成文字就无法正常输出了
搜索更多相关主题的帖子: 输出 文字 数字 include main 
2018-08-17 11:28
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:528
帖 子:9031
专家分:54061
注 册:2011-1-18
收藏
得分:10 
首先是代码
#include <wchar.h>
#include <locale.h>

int main( void )
{
    wchar_t a = L'中';
    setlocale( LC_CTYPE, "这里要填入什么呢?" );
    putwchar( a );
    wprintf( L"%lc", a );
}

假如你用的是linux,那依次试试 空字符串、zh_CN、zh_CN.gb18030、zh_CN.gb2312、zh_CN.gbk、zh_CN.utf8、……,都不行也是可能的,因为有可能你的系统没安装汉字
假如你用的是windows,那依次试试 空字符串、chs、.936、……,都不行也是可能的,因为有可能你的系统没安装汉字
2018-08-17 12:45
cwhEd
Rank: 2
等 级:论坛游民
威 望:1
帖 子:16
专家分:17
注 册:2018-8-14
收藏
得分:0 
回复 2楼 rjsp
是系统没有安装汉字库吗?
2018-08-18 10:31
快速回复:萌新求教
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.015954 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved