2

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

我已经在使用 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);

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

4

1 回答 1

2

没有打印功能,只有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用于块。

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

于 2013-06-07T13:48:37.070 回答