新闻中心

C++如何设置输出字体颜色_C++控制台文本颜色修改代码

2025-12-01
浏览次数:
返回列表
答案是使用Windows API的SetConsoleTextAttribute()函数可修改C++控制台文本颜色,需包含windows.h头文件,通过设置颜色代码改变前景色和背景色,颜色持续生效直至重新设置,示例中分别输出红、绿、亮黄及默认颜色文字,跨平台应用需考虑ANSI转义序列兼容性。

c++如何设置输出字体颜色_c++控制台文本颜色修改代码

在C++中,可以通过调用Windows API函数来修改控制台输出的文本颜色。这种方法适用于Windows平台下的控制台程序(如使用Visual Studio编译运行的程序)。核心函数是SetConsoleTextAttribute(),它定义在windows.h头文件中。

包含必要头文件

要使用颜色控制功能,需包含以下头文件:

#include iostream>
#include windows.h>

设置文本颜色的基本方法

使用SetConsoleTextAttribute()函数可以改变后续输出文本的颜色。该函数接受两个参数:控制台句柄和颜色属性。常用方式如下:

HANDLE hConsole = GetStdHandle(STD_OUTPUT_HANDLE);
SetConsoleTextAttribute(hConsole, color_code);

其中color_code是一个整数值,代表前景色(文字颜色)和背景色的组合。

颜色代码说明

颜色由4位二进制数表示,低4位控制前景色,高4位控制背景色。常用前景色代码如下:

GoEnhance GoEnhance

全能AI视频制作平台:通过GoEnhance AI让视频创作变得比以往任何时候都更简单。

GoEnhance 347 查看详情 GoEnhance
  • 1:蓝色
  • 2:绿色
  • 3:青色
  • 4:红色
  • 5:紫色
  • 6:黄色
  • 7:白色(默认)
  • 8:灰色
  • 9:亮蓝色
  • 10:亮绿色
  • 12:亮红色
  • 14:亮黄色
  • 15:亮白色

示例代码

下面是一个完整示例,展示如何输出不同颜色的文本:

#include stream>
#include windows.h>
using namespace std;

int main() {
    HANDLE hConsole = GetStdHandle(STD_OUTPUT_HANDLE);

    // 红色文字
    SetConsoleTextAttribute(hConsole, 4);
    cout

    // 绿色文字
    SetConsoleTextAttribute(hConsole, 2);
    cout

    // 亮黄色文字(背景为黑色)
    SetConsoleTextAttribute(hConsole, 14);
    cout

    // 恢复默认颜色
    SetConsoleTextAttribute(hConsole, 7);
    cout

    return 0;
}

注意事项

颜色设置会持续生效,直到再次更改。如果希望恢复默认颜色,通常使用7(白色/灰色)。跨平台程序无法直接使用此方法,Linux/macOS需使用ANSI转义序列。若需兼容多平台,建议封装颜色输出函数进行条件编译处理。

基本上就这些。不复杂但容易忽略的是记得恢复颜色或统一管理状态。

以上就是C++如何设置输出字体颜色_C++控制台文本颜色修改代码的详细内容,更多请关注其它相关文章!


# 背景色  # 桐城网站建设公司推荐  # 特产网站建设海报素材  # 网络网站推广首荐乐云seo  # 莆田网站优化及营销方案  # 倚天图标网站建设  # 崇明建设工地招工网站  # 什么网站推广流量大  # 湖北网站优化排名意思  # 本地网站建设口碑推荐  # 高校移动门户网站建设  # 迭代  # 的是  # 解决方法  # 重写  # 如何设置  # c++  # 前景色  # 有什么  # 头文件  # 是一个  # cos  # 跨平台应用  # stream  # win  # macos  # ios  # ai  # mac  # windows  # linux  # 字体颜色 


相关栏目: 【 科技资讯46185 】 【 网络学院92790


相关推荐: HuggingFaceEmbeddings中向量嵌入维度调整的限制与理解  12306选座怎么选到商务座_12306商务座选择与配置说明  J*a 递归快速排序中静态变量的状态管理与陷阱  曝R星经典之作开发图 设计简陋但信息密集!  顺丰快递查询系统 官方正版查询入口  汽水音乐在线解析 汽水音乐在线解析入口  2026春节假期票务安排_2026春节放假购票指南  React Hooks最佳实践:动态组件状态管理的组件化方案  解决Bootstrap卡片顶部边距导致背景图下移的问题  58动漫网在线官方网 58动漫网正版动漫入口网址  创客贴用户入口官网登录 创客贴网页版电脑版系统  抖音网页版怎么|直播|_抖音网页版开播操作指南  Spring Boot内嵌服务器与J*a EE全栈特性:选择与部署策略  C++如何使用AddressSanitizer(ASan)_C++调试工具中检测内存访问错误的利器  Typer应用中动态命令行参数的解析与处理  Win11网速慢怎么解决 Win11网络设置优化解除限速  QQ邮箱网页版入口登录 QQ邮箱在线邮箱官方通道  Python类型检查:优化关联可选属性的Mypy推断策略  如何在 Windows 11 中启动游戏手柄设置  Centos/Linux 系统下安装 composer 的完整步骤  c++ 获取系统当前时间 c++时间戳获取方法  Eclipse怎么运行工程_Eclipse工程运行配置说明  J*a里如何实现订单支付与库存同步功能_支付库存同步项目开发方法说明  解决移动端滚动问题的overflow属性应用指南  在J*a中如何开发简易博客标签推荐系统_博客标签推荐项目实战解析  邮编格式怎么匹配地址_根据邮编格式快速匹配详细地址的技巧  大麦的“候补”是什么意思 大麦候补购票规则【详解】  Basecamp怎样用留言钉固定重点_Basecamp用留言钉固定重点【重点标记】  抖音隐秘迷城小游戏入口_ 抖音冒险解谜小游戏秒玩  C#如何安全地从用户上传的XML文件中读取数据? 验证与清理策略  “音游” × “怪文书” 题材的节奏冒险游戏 《晕晕电波症候群》确定于2026年4月发售!  优化 Jest 模拟:强制未实现函数抛出错误以提升测试效率  QQ邮箱官方网页版登录 QQ邮箱个人邮箱快速访问  内存疯狂猛猛涨价:主板销量直接腰斩!  解决 Express.js 中 PUT 请求密码修改失败的路由配置指南  PS5 Pro有点优势但不多! 《燕云十六声》PS5平台与PC性能画面对比  Excel组合图表怎么做 Excel创建柱状图与折线组合图教程【图表】  Win10磁盘清理工具在哪 Win10打开并使用磁盘清理【教程】  外媒分析《GTA6》定价:卖100美元可以但真没必要!  在J*a中如何开发在线活动报名与管理系统_活动报名管理项目实战解析  Discord Slash 命令响应超时问题的异步解决方案  QQ邮箱登录官网首页 腾讯QQ邮箱网页入口  J*aScript设计模式实践_j*ascript代码优化  俄罗斯Yandex搜索引擎入口_Yandex官网免登录一键访问  Word2013如何插入视频和音频媒体_Word2013媒体插入的多媒体支持  《主播少女的秘密账号迷宫》首支宣传片  QQ邮箱官方邮箱登录入口 QQ邮箱网页版快速访问  NRF24L01数据传输深度解析:解决大载荷接收异常与分包策略  神庙逃亡小游戏在线玩 神庙逃亡小游戏入口  抖音创作助手登录入口_抖音创作辅助工具官网直达 

搜索