标题:为什么程序不能输出藏文?请问老师们有没有解决办法?
只看楼主
东南风
Rank: 1
等 级:新手上路
威 望:1
帖 子:19
专家分:5
注 册:2016-9-2
结帖率:100%
已结贴  问题点数:20 回复次数:6 
为什么程序不能输出藏文?请问老师们有没有解决办法?
程序代码:
#include <wchar.h>
#include <locale.h>

int main() {
    wchar_t a = L'';  //中文汉字
    wchar_t b = L'';  //日文片假名
    wchar_t c = L'';  //藏文

    //将本地环境设置为简体中文
    setlocale(LC_ALL, ".936");

    //使用通用的 wprintf 输出宽字符
    wprintf(L"Wide chars: %lc %lc %lc\n", a, b, c); //必须使用宽字符串
    return 0;
}
搜索更多相关主题的帖子: 办法 输出 字符 include 老师 
2021-03-07 18:02
zbjzbj
Rank: 12Rank: 12Rank: 12
来 自:郑州
等 级:贵宾
威 望:52
帖 子:620
专家分:3020
注 册:2011-4-22
得分:7 
操作系统字符设置问题。
学c语言最好只用E文。简洁,原生。
一旦学成了,改换字符集,那不是个事。
现在很少用C语言直接做应用程序的。都用c++,c#及其他高级语言。
c语言用来学习,打基础。
现在纠结于字符集,事倍功半。
收到的鲜花
  • 东南风2021-03-08 13:53 送鲜花  1朵  
2021-03-07 18:10
apull
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:三体星系
等 级:版主
威 望:185
帖 子:1404
专家分:8479
注 册:2010-3-16
得分:7 
手机下gcc运行正常,你换个编译器看看。


收到的鲜花
  • 东南风2021-03-08 13:54 送鲜花  1朵  
2021-03-07 18:21
东南风
Rank: 1
等 级:新手上路
威 望:1
帖 子:19
专家分:5
注 册:2016-9-2
得分:0 
回复 2楼 zbjzbj
谢谢老师指点!刚刚接触c,我用的是vscode,终端是cmd, 即使用chcp设置为65001,在显示藏文时还是一个?。
2021-03-07 19:50
东南风
Rank: 1
等 级:新手上路
威 望:1
帖 子:19
专家分:5
注 册:2016-9-2
得分:0 
回复 3楼 apull
谢谢版主大人!我的环境是window 10,在vs2017,vscode和sublime text3中都测试过,藏文显示为一个?。(编译器:x86_64-posix-seh)

[此贴子已经被作者于2021-3-7 20:06编辑过]

2021-03-07 19:59
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:507
帖 子:8890
专家分:53117
注 册:2011-1-18
得分:7 
".936" 是 gbk 编码吧,
gbk 编码中有 ༄ 吗?
收到的鲜花
  • 东南风2021-03-08 13:53 送鲜花  1朵  
2021-03-08 10:59
东南风
Rank: 1
等 级:新手上路
威 望:1
帖 子:19
专家分:5
注 册:2016-9-2
得分:0 
回复 6楼 rjsp
谢谢版主提示!我也注意到了这个问题,gbk(936)中肯定没有藏文字符,但在setlocale中怎样设置utf8呢?在vscode中试了几种语法(zh-CN.UTF-8,.65001)都不能成功识别。奇怪的是3楼版主在手机上测试我的代码可以成功输出藏文来,这又貌似与setlocale设置无关?在vscode中源代码是用UTF8保存的,cmd活动代码页成功设置为65001,就是死活输不出藏文来。希望得到各位大佬的指点。
2021-03-08 13:48



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




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

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