标题:萌新求教
只看楼主
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
等 级:版主
威 望:507
帖 子:8890
专家分:53117
注 册: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



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-489272-1-1.html




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

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