3

私のプログラムは、ネットワークから次のようなテキストデータを読み取り Hello \033[1;34mworld\033[0m and bla bla bla!!!\n"ました。プログラムがprinfを使用してこの文字列を出力すると、「世界」という単語は青色になります。しかし、wprintw または addch で ncurses インターフェイスを使用している場合、エスケープ シーケンスを含む元の文字列が表示されます。printf がエスケープシーケンスを処理するかどうかということですか? ncursesでエスケープシーケンスを処理する最良の方法は何ですか?

4

1 に答える 1

5

いいえ、端末がエスケープ シーケンスを処理します。あなたが見ている現象は、ncurses の全体的な目的は、意図した端末の内容を追跡し、それを再描画できるようにすることであり、これを行う一環として、エスケープ シーケンスを削除するという事実から来ています。それらを解釈し、端末に含まれる必要がある独自のイメージに適用する代替機能を提供する場合がありますが、そうでない場合は、この作業を自分で行う必要があります...

于 2012-04-18T15:02:55.227 に答える