プログラムをインストールすると、コンソールウィンドウにプログレスバー(またはその他の動的に変化するテキスト)が表示されることがあります。表示され、同じ文字列の行で変化します。または他の機能を使用するとprintf
、次のテキストを書き込みますが、コンソールウィンドウで既存のテキストを変更できません。どうすればCを介してそれを行うことができますか?
質問する
88 次
2 に答える
3
この種の効果の最も簡単な方法は\r
、前の行を上書きできるキャレットリターン文字を使用することです。
コンソールのバッファに直接アクセスしたい場合(つまり、行ごとではなく特定のX / Y位置に書き込みたい場合)、おそらくのようなヘルパーライブラリを探していますpdcurses
。
于 2012-12-05T17:24:17.410 に答える
2
printfを使い続けて、テキストの「変更」を簡単に実行したい場合は\r
、Linuxのキャリッジリターンを使用してください。ただし、改行を意味するため、MACでは機能しません。
これを行う場合は、ioctlを使用してキャレットを非表示にし、ちらつきや醜い効果を防ぐことをお勧めします。
画面上のテキストをより適切に操作する方法が必要な場合は、ncursesを確認できます。
于 2012-12-05T17:26:02.917 に答える