Выведите "█" с помощью ncursesw в C

Я делаю тетрис-игру на 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);

Какой должна быть эта строка для вывода "█"?

1 ответ

Нет никаких функций печати, только 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

Другие вопросы по тегам