c/c++语言开发共享使用ncurses在C中打印Unicode字符

我必须使用ncurses在C中绘制一个方框;

首先,为简单起见,我定义了一些值:

#define RB "e(0x6ae(B" (ASCII 188,Right bottom, for example) 

我已经使用gcc编译,通过Ubuntu,使用-finput-charset=UTF-8标志。

但是,如果我尝试使用addstr或printw进行打印,我会得到hexa代码。 我做错了什么?

    ncurses定义值ACS_HLINEACS_VLINEACS_ULCORNERACS_URCORNERACS_LLCORNERACS_LRCORNER 。 您可以在addch和friends中使用这些常量,这将导致您看到预期的框字符。 (还有更多的ACS角色;你会在man addch找到一个完整的列表。)

    ncurses需要知道它绘制的是什么,因为它需要确切地知道光标的确切位置。 输出控制台控制序列不是一个好主意; 如果ncurses知道如何处理序列,它有自己的function抽象,你应该使用该抽象。 ACS(“备用字符集”)定义是这些抽象之一。

    一些问题:

      以上就是c/c++开发分享使用ncurses在C中打印Unicode字符相关内容,想了解更多C/C++开发(异常处理)及C/C++游戏开发关注计算机技术网(www.ctvol.com)!)。

      本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

      ctvol管理联系方式QQ:251552304

      本文章地址:https://www.ctvol.com/c-cdevelopment/544659.html

      (0)
      上一篇 2021年1月9日
      下一篇 2021年1月9日

      精彩推荐