c - C 中使用 ncursesw 输出 "█"

标签 c unicode ncurses curses

我正在用 C 语言制作一个在嵌入式系统上运行的俄罗斯方 block 游戏,但我想要一个使用“█”(UNICODE 0x2588)等 block 字符制作的模拟界面。

我已经在使用 ncursesw 并且听说过使用 wprintw() 而不是 prints()。

printw("%i %i %i %i %i %i %i %i %i\n",board[0][i],board[1][i],board[2][i],board[3][i],board[4][i],board[5][i],board[6][i],board[7][i], piece);

为了输出“█”,这一行应该是什么?

最佳答案

没有打印函数,只有 addwstr 函数:

addwstr, addnwstr, waddwstr, waddnwstr, mvaddwstr, mvaddnwstr, mvwaddwstr, mvwaddnwstr 
- add a string of wide characters to a curses window and advance cursor

和add_wch函数:

add_wch, wadd_wch, mvadd_wch, mvwadd_wch, echo_wchar, wecho_wchar 
- add a complex character and rendition to a curses window, then advance the cursor

一些角色有宏,例如WACS_BLOCK 表示一个 block 。

对于您的代码,您必须创建 wchar_t 字符串,然后使用 addwstr

关于c - C 中使用 ncursesw 输出 "█",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16973052/

相关文章:

在 Windows 上使用 C 中的 WideCharToMultiByte 将 UTF-16 转换为 UTF-8

ruby - 从 ruby​​-ncurses 中获取 256 种颜色

c++ - 使用 ncurses 在 C++ 中进行移动绑定(bind)

关于返回值和变量生命周期的说明

c++ - undefined symbol : _ZL22__gthrw_pthread_cancelm error

unicode - Unicode 字符如何映射到字体中的字形?

ios - 诸如黑桃之类的 Unicode 字符不会改变颜色? ( objective-c )

c - ncurses 是在 linux 的 C 程序中实现命令历史记录的好选择吗

c - gcc 宏中的类型检查和类型衰减

c - 在linux中创建非持久文件的最佳方法是什么