C - ncurses 中的上半部分和下半块字符



我正在用 c 构建一个 ncurses 程序,我想获取上半部分和下半块字符(例如 U+2580 和 U+2584((▀(用于小终端上的图形(我通常使用双倍空格和倒置双倍空格(。我尝试了很多不同的方法,但没有一种奏效。我也尝试了urxvt st和xterm,但绝对没有成功。例如:

#include <locale.h>
#include <ncurses.h>

int main (int argc, char *argv[]) {
    setlocale(LC_ALL, "");
    initscr();
    add_wch(L"u2584");
    refresh();
    getch();
    endwin();
}

另外,如果还有其他方式可以在终端中显示图形,例如我见过的一些小点,我将非常感兴趣。

编辑:另外,当我将字符粘贴到终端时,它显示它很好,但是当我使用printf时,它什么也没显示。 这是为什么呢?

语句

add_wch(L"u2584");

不适用于任何终端,因为参数是错误的数据类型。 add_wch需要一个cchar_t数据类型,而你提供了一个wchar_t字符串(你会得到更好的结果与waddwstr(。

最新更新