我在Code:Blocks
IDE中使用编译器GNU GCC
运行C.我想在我的控制台应用程序中使用彩色字符串输出。我所使用的操作系统是Windows
之前,我使用过Borland C.所以,使用textcolor()
textbackground()
和cprintf()
都很好。但是这些函数似乎不适用于Code:Blocks IDE和GNU GCC Compiler。
我现在该怎么做才能打印彩色文字?
答案 0 :(得分: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
您还可以通过对多个前景色或背景色进行“或”来混合颜色,例如:
FOREGROUND_GREEN | FOREGROUND_BLUE
会给你一个蓝绿色的文字。