我刚刚编写了一个 C++] 程序,它使用方框字符来显示信息。\xc2\xa0\nI\xc2\xa0在 macOS 上运行该程序并使用终端应用程序,它运行良好。
\n当我使用相同的代码切换到Debian Linux并重新编译它时,\n我\xc2\xa0才遇到这个问题!\xc2\xa0\n我\在网上搜索了答案,\n但我\xc2\xa0没有找到与这个问题。\xc2\xa0\n我已经\xc2\xa0 使用LXTerminal和\xc2\xa0 URXVT测试了这个问题。
\n这是这个问题的最小可重现示例:
\n#include <ncurses.h>\n#include <iostream>\n\nint ch;\n\nint main() {\n setlocale(LC_CTYPE, "");\n initscr();\n noecho();\n keypad(stdscr, true);\n nodelay(stdscr, true);\n curs_set(0);\n start_color();\n use_default_colors();\n\n init_pair(1, COLOR_BLUE, -1);\n\n clear();\n refresh();\n\n while ((ch = getch()) != \'q\' && ch != \'Q\') {\n\n attrset(COLOR_PAIR(1));\n\n mvprintw(0,0,"\xe2\x94\x8f\xe2\x94\x81\xe2\x94\x93");\n mvprintw(1,0,"\xe2\x94\x97\xe2\x94\x81\xe2\x94\x9b");\n\n }\n\n refresh();\n endwin();\n\n return 0;\n}\n
Run Code Online (Sandbox Code Playgroud)\n使用以下命令编译此演示:
\ng++ -g -c -o main.o test.cpp && g++ -g -o test main.o -std=c++11 -Wall -pedantic -lncurses\n
Run Code Online (Sandbox Code Playgroud)\n或者 …