我在編譯器GNU GCC
的IDE中運行C.我想在控制檯應用程序中使用多彩的字符串輸出。我使用的操作系統是Windows如何在我的控制檯應用程序(C)中使用顏色?
此前,我使用了Borland C.所以,使用textcolor()
textbackground()
和cprintf()
都很好。但是這些函數似乎無法在包含GNU GCC編譯器的Code:Blocks IDE中工作。
現在應該如何打印彩色文本?
我在編譯器GNU GCC
的IDE中運行C.我想在控制檯應用程序中使用多彩的字符串輸出。我使用的操作系統是Windows如何在我的控制檯應用程序(C)中使用顏色?
此前,我使用了Borland C.所以,使用textcolor()
textbackground()
和cprintf()
都很好。但是這些函數似乎無法在包含GNU GCC編譯器的Code:Blocks IDE中工作。
現在應該如何打印彩色文本?
終端中的顏色構建在標準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
會給你一個藍綠色的文字。
終端上的彩色輸出有點特定於平臺。你想讓這個代碼運行在哪個平臺上? –
查看對此問題的回答,可能有所幫助:http://stackoverflow.com/a/4067037/139746 –
@PascalCuoq。它並沒有幫助我 – cipher