首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >为什么ncurses不能输出UTF8字符串的所有外文字符?

为什么ncurses不能输出UTF8字符串的所有外文字符?
EN

Stack Overflow用户
提问于 2018-06-09 03:39:15
回答 1查看 154关注 0票数 0

试图在ncurses下获得对UTF8的完全支持。我构建了支持宽字符的ncurses 5.9。如果我有一个打印字符串:D0 9D D0 BE D0 B2 D1 8B D0 B9将在普通控制台中使用utf8输出Новый。如果我启动ncurses并使用waddstr,我只能得到?~]ов?~Kй中的一些字符。为什么它不工作,嵌入的转义序列~]和~K有什么意义?

我包括广泛版本的标题和链接与构建的广泛的库。

这是使用open watcom构建的(静态链接),事实证明OW总是使用"C“语言环境,所以重新构建了删除HAVE_LOCALE_H的库(这允许ncurses从环境变量中拉入信息,在本例中为LANG='en_US.UTF-8')。所以现在去掉了~]~K,但仍然得到了? ов? й (现在新行的\n不起作用了)。

因此,这已经演变成两个额外的问题:

1) ncurses对c库有什么要求?(显然,ncurses可以很好地处理一些多字节字符,但这两个字符仍然存在问题)

2)为什么newline字符停止工作?

蒂娅!!

EN

回答 1

Stack Overflow用户

发布于 2018-06-09 03:49:00

也许您忘了设置区域设置:

代码语言:javascript
复制
setlocale(LC_ALL, "");

如手册页的部分所述。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50767405

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档