解码C语言控制台颜色输出

基本原理

控制台颜色输出使用ANSI转义序列,格式为:\033[属性代码m

常用颜色代码

字体颜色
#define RED "\033[31m"// 红色
#define GREEN "\033[32m"// 绿色
#define YELLOW "\033[33m"// 黄色
#define BLUE "\033[34m"// 蓝色
#define MAGENTA "\033[35m"// 洋红色
#define CYAN "\033[36m"// 青色
#define WHITE "\033[37m"// 白色
背景颜色
#define BG_RED "\033[41m"// 红色背景
#define BG_GREEN "\033[42m"// 绿色背景
#define BG_YELLOW "\033[43m"// 黄色背景
#define BG_BLUE "\033[44m"// 蓝色背景
#define BG_MAGENTA "\033[45m"// 洋红色背景
#define BG_CYAN "\033[46m"// 青色背景
#define BG_WHITE "\033[47m"// 白色背景
重置颜色
#define RESET "\033[0m"// 重置所有属性

使用注意事项

必须重置颜色:设置颜色后,必须使用RESET恢复默认设置,否则后续输出都会保持该颜色
组合使用:可以同时设置字体颜色和背景颜色

//用空格分隔
printf(RED BG_WHITE "红字白底" RESET "\n");

兼容性:ANSI转义序列在大多数Unix/Linux终端和Windows 10+的终端中支持,但旧版Windows cmd可能不支持
格式顺序:多个属性可以组合使用

//用分号分隔
printf("\033[31;47m红字白底\033[0m\n");// 31:红色, 47:白色背景

其他常用属性代码

#define BOLD "\033[1m"// 粗体
#define UNDERLINE "\033[4m"// 下划线
#define BLINK "\033[5m"// 闪烁
#define REVERSE "\033[7m"// 反显(前景背景互换)

示例代码结构

#include <stdio.h>// 定义颜色代码
#define RESET "\033[0m"// 字体颜色定义...// 背景颜色定义...
int main() {
// 使用颜色输出
	printf(颜色代码 "文本内容" RESET);
	return 0;
}
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值