ncursesでマルチバイト文字を扱うには
環境:Windows Subsystem for Linux(WSL)
Windows Subsystem for Linux(WSL)でncursesを使う方法
前回はWSL上で ncurses を使えるようにしましたが、日本語を扱う場合においては、そのままコンパイルしてもマルチバイト文字には対応していないので文字化けしますよね。なので今回はマルチバイト文字に対応させてみます
#include <ncurses.h>
#include <locale.h>
int main(void)
{
setlocale(LC_ALL,"");
initscr();
move(5,5);
addstr("お黙り! World");
refresh();
getch();
endwin();
return 0;
}
locale.h の include と setlocale(LC_ALL,"") でロケールを追加
コンパイル
$ gcc test.c -o test -lncurses ではなく
オプション -lncurses から -lncursesw に変更
$ gcc test.c -o test -lncursesw
実行結果
コメント
0 件のコメント :
コメントを投稿