私はncursesを使ってRaspberry Piの端末プログラムを作成しています。私はボックスの周りに影を追加したい。私はmvaddch()
を使用して、char 233(上半分のボックス文字)などの拡張文字を印刷したいと考えています。 mvaddch()
コマンドの構文は何ですか?それともこれを達成する別の方法がありますか?gcc ncursesはcharなどの文字を拡張します(グリフ)223
1
A
答えて
1
おそらく、code page 866のようなものを指しているでしょう。 ncursesはあなたの端末がlocale encoding(おそらくUTF-8)と一致する文字を表示すると仮定します。だから(あなたのプログラムの文字を変換しない限り)行く方法は、Unicodeの値を使用しています。
ユニコード組織には、特定のコードを検索するためのテーブルがあります(例:ftp://ftp.unicode.org/Public/MAPPINGS/VENDORS/MICSFT/PC/CP866.TXT)。たとえば、関連する行は
0xdf 0x2580 #UPPER HALF BLOCK
(0xdfは223なので)です。関数mvaddwstrの呼び出しで、Unicode 0x2580
を使用します。
wchar_t mydata[] = { 0x2580, 0 };
mvaddwstr(0,0, mydata);
(wadd_wch
同様の名前は、より複雑なデータ構造を使用します)。
あなたは ncurseswライブラリにリンクする必要があり、そしてもちろんinitialize your program's locale using setlocale
のncursesベースのマニュアルページで述べたようになります。
関連する問題
- 1. 構造体からncurses拡張文字を使用する
- 2. 拡張キーをトラップするncurses
- 3. GCCベクトル拡張は、オペレータ
- 4. SSE(SIMD拡張)gccの
- 5. C - GCC SSEベクトル拡張
- 6. C++拡張ASCII文字
- 7. GCCベクター拡張でのメモリーアライメントの問題
- 8. gccでcプログラミング言語を拡張
- 9. Java Generic?文字列を拡張します
- 10. watir-webdriverの拡張文字のテスト
- 11. 拡張ASCIIまたはutf-8文字を受信するTCP
- 12. Code :: Blocksの拡張Ascii文字C++
- 13. Cython拡張タイプのPython文字列
- 14. 小文字の "jpg"とは異なる大文字の "JPG"拡張子はありますか?
- 15. 文字列の値を拡張メソッドに置き換えます
- 16. 表は、長い文字列にすぎ拡張しており、
- 17. 拡張後に不要な文字を削除する
- 18. ncursesメニュー - ユーザ入力の文字列を表示しません
- 19. "unsigned char *"を "char *"(そして文字列)に変換する
- 20. ESC文字を使用してGSM 03.38拡張文字セットにアクセスする
- 21. char *に文字を渡し
- 22. 文字列がcharの場合、strtok_sがプログラムをクラッシュします*
- 23. Pythonで文字列内のすべての文字列を拡張する
- 24. 文字列クラスを拡張するコンテキストでは機能しません
- 25. php拡張メソッドから文字列を返す方法は?
- 26. MIMEタイプのファイル拡張子は大文字ですか?
- 27. 文字列内の特殊文字の前後に追加文字で文字列を拡張する方法
- 28. コンパイル時のテンプレートエラーのテンプレート拡張を抑制するgccコンパイラフラグ?
- 29. ファイル(ファイル拡張子)の最後の3文字を削除します
- 30. 文字をスキャンし、IF文で使用していますか? (もしchar型の== 'C'){}など、これまで