C语言——设置颜色


调用Windows.h头文件下的SetConsoleTextAttribute函数改变文字和背景颜色。

调用形式为:

SetConsoleTextAttribute( HANDLE hConsoleOutput, WORD wAttributes );
hConsoleOutput表示控制台缓冲区句柄,可以通过GetStdHandle(STD_OUTPUT_HANDLE)来获得;
wAttributes表示文字颜色和背景颜色。
WORDwindows.h中定义,等同于unsigned short,使用低4位表示文字(前景)颜色,高4位表示文字背景颜色,所以它的取值为xx
x为一位16进制数,即0~F都可以使用,可以随意组合。
0~F 分别代表的颜色如下:
0 = 黑色    8 = 灰色    1 = 淡蓝      9 = 蓝色
2 = 淡绿    A = 绿色    3 = 湖蓝      B = 淡浅绿  
C = 红色    4 = 淡红    5 = 紫色      D = 淡紫  
6 = 黄色    E = 淡黄    7 = 白色      F = 亮白
1 #include<stdio.h>
2 #include<windows.h>
3 int main()
4 {
5     HANDLE hConsole = GetStdHandle(STD_OUTPUT_HANDLE);
6     SetConsoleTextAttribute(hConsole, 0x2C );
7     puts("C语言中文网");
8     return 0;
9 }

如果只希望设置文字颜色,背景保持黑色,那么也可以只给出一位16进制数,例如:

SetConsoleTextAttribute(hConsole, 0xC );  //将文字颜色设置为红色
SetConsoleTextAttribute(hConsole, 0xF );  //将文字颜色设置为白色
 1 #include <stdio.h>
 2 #include <windows.h>
 3 int main(){
 4     HANDLE hConsole = GetStdHandle(STD_OUTPUT_HANDLE);
 5     SetConsoleTextAttribute(hConsole, 0xC );
 6     puts("红色文字");
 7     SetConsoleTextAttribute(hConsole, 0xF );
 8     puts("白色文字");
 9     SetConsoleTextAttribute(hConsole, 2 );
10     puts("淡绿色文字");
11     return 0;
12 }

 

 

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM