admin 管理员组文章数量: 1086019
2024年7月2日发(作者:input type date)
c语言改变颜色
1.改变整个控制台的颜色
用 system("color 0A");
其中color后面的0是背景色代号,A是前景色代号。各颜色代码如下:
0=黑色1=蓝色2=绿色3=湖蓝色
4=红色5=紫色6=黄色7=白色
8=灰色9=淡蓝色A=淡绿色B=淡浅绿色
C=淡红色D=淡紫色E=淡黄色F=亮白色
2.改变下一个输出或者输入字体和背景的颜色
采用SetConsoleTextAttribute函数,如
White on Black:
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUN
D_INTENSITY | FOREGROUND_RED | FOREGROUND_GREEN | FOREGROUND_BLUE);
Red on Black:
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUN
D_INTENSITY |FOREGROUND_RED);
Green on Black:
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUN
D_INTENSITY | FOREGROUND_GREEN);
Yellow on Black:
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUN
D_INTENSITY |FOREGROUND_RED | FOREGROUND_GREEN);
Blue on Black:
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUN
D_INTENSITY |FOREGROUND_BLUE);
Magenta on Black:
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUN
D_INTENSITY |FOREGROUND_RED | FOREGROUND_BLUE);
Cyan on Black:
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUN
D_INTENSITY |FOREGROUND_GREEN | FOREGROUND_BLUE);
Black on Gray:
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),BACKGROUN
D_INTENSITY |BACKGROUND_INTENSITY);
Black on White:
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),BACKGROUN
D_INTENSITY |FOREGROUND_INTENSITY | BACKGROUND_RED |
BACKGROUND_GREEN | BACKGROUND_BLUE);
Red on White:
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),BACKGROUN
D_INTENSITY |FOREGROUND_INTENSITY | BACKGROUND_RED |
BACKGROUND_GREEN | BACKGROUND_BLUE |FOREGROUND_RED);等等。
需要引入头文件:
windows.h
函数原型:
BOOL SetConsoleTextAttribute(HANDLE hConsoleOutput, WORD wAttributes);
wAttributes 的取值含义对应如下:
Attribute Meaning
foreground_blue Text color contains blue.
foreground_green Text color contains green.
foreground_red Text color contains red.
foreground_intensity Text color is intensified. background_blue Background
color contains blue. background_green Background color contains green.
background_red Background color contains red. background_intensity Background
color is intensified. common_lvb_leading_byte Leading byte.
common_lvb_trailing_byte Trailing byte.
common_lvb_grid_horizontal Top horizontal.
common_lvb_grid_lvertical Left vertical.
common_lvb_grid_rvertical Right vertical.
common_lvb_reverse_video Reverse foreground and background
attributes.
common_lvb_underscore Underscore.
#include
#include
int main(void)
{
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),
BACKGROUND_RED | FOREGROUND_GREEN);
printf("TestA");
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),
BACKGROUND_BLUE | FOREGROUND_RED | FOREGROUND_GREEN);
printf("TestB");
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),
FOREGROUND_INTENSITY | FOREGROUND_BLUE);
printf("TestCn");
getchar();
return0;
}
版权声明:本文标题:c语言改变颜色 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://roclinux.cn/b/1719912884a739871.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论