4

Turbo C++ 3.0 を使用して DOS 環境で基本的なスネーク ゲームを作成しました。私はしばらくの間、DOS ウィンドウで異なる色のテキストを作成する非常に単純でおそらく初歩的な方法を探していました。テキストを着色する複雑な方法を探しているわけではありません。私が書いているほとんどのプログラムは非常に単純で基本的なものであり、プログラム自体よりも大きいテキストに色を付けるための複雑なコードは、混乱を招き、効果がありません。

私の質問は、C と C++ の両方の言語で DOS コンソールのテキストに色を付ける最も簡単な方法は何ですか?

4

4 に答える 4

7

ansi.sysを有効にすると、ansi エスケープ シーケンスを使用できます。

「DOSウィンドウ」と呼んでいるように、WindowsでDOSを使用していると思いますので、使用する前にansi.sysを有効にする必要があります。

Turbo C++ 3.0 には Windows ヘッダーまたはライブラリが付属していないため、コンソール API を使用することはできません。

于 2012-01-20T19:01:05.200 に答える
5

Turbo C/C++ のみの (つまり、非標準の) 関数textcolor()、 、を 、 、textbackground()textattr()一緒に使用できます。IDE のヘルプでそれらの説明を参照してください。それらはすべて.cprintf()cputs()putch()conio.h

于 2012-01-20T19:15:18.413 に答える
2

実際に DOS (DOSBox や Win 9x の DOS など) を使用していますか?

その場合、ANSI.SYSは非常に簡単に使用できます。色を設定する制御コードをテキストの前に置くだけです。

そうでない場合 (つまり、実際に Windows でコマンド プロンプトを使用している場合)、SetConsoleTextAttributeを使用して前景色と背景色を設定します。

Windows の 32 ビット バージョンはまだサポートcommand.comされており、これを読み込むことができますANSI.SYS

于 2012-01-20T19:01:44.543 に答える