1

Code:Blocksコンパイラを使用してIDEでCを実行していGNU GCCます。そして、コンソールアプリケーションでカラフルな文字列出力を使用したいと思います。私が使用しているOSはWindowsです

以前は、Borland Cを使用していました。したがって、textcolor() textbackground()andcprintf()を使用して問題ありませんでした。しかし、これらの関数は、GNUGCCコンパイラがラップされたCode:BlocksIDEでは機能しないようです。

色付きのテキストを今すぐ印刷するにはどうすればよいですか?

4

1 に答える 1

1

ターミナルの色は標準のWindowsに組み込まれており、非常に簡単です。関数が必要SetConsoleTextAttribute()な場合は、次の非常に簡単な例を示します。

#include <stdio.h>
#include <Windows.h>
#include <string.h>

void main()
{
    printf("Hello\n");  // Print white text on black output
    SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), FOREGROUND_RED);
    printf("Hello Again!\n");  // Print Red text on black output
    getchar(); // Pause the program to admire the colors
}

さらに強調表示するために、背景を変更することもできます。|フラグをOR()して、さまざまな色とさまざまな背景/前景を取得することもできます。

したがって、(何らかの理由で)緑の背景に赤いテキストを表示したい場合は、次のようにすることができます。

FOREGROUND_RED | BACKGROUND_GREEN

ここに画像の説明を入力してください

たとえば、複数の前景色または背景色をORすることで、色を混合することもできます。

FOREGROUND_GREEN | FOREGROUND_BLUE

青緑色のテキストが表示されます。

于 2012-11-08T01:54:42.157 に答える