#include <stdint.h>
#include <iostream>
#include <string>
#include <Windows.h> // 0 = 黑色 8 = 灰色
// 1 = 蓝色 9 = 淡蓝色
// 2 = 绿色 A = 淡绿色
// 3 = 浅绿色 B = 淡浅绿色
// 4 = 红色 C = 淡红色
// 5 = 紫色 D = 淡紫色
// 6 = 黄色 E = 淡黄色
// 7 = 白色 F = 亮白色 // 控制台前景颜色
enum ConsoleForegroundColor
{
enmCFC_Red = FOREGROUND_INTENSITY | FOREGROUND_RED,
enmCFC_Green = FOREGROUND_INTENSITY | FOREGROUND_GREEN,
enmCFC_Blue = FOREGROUND_INTENSITY | FOREGROUND_BLUE,
enmCFC_Yellow = FOREGROUND_INTENSITY | FOREGROUND_RED | FOREGROUND_GREEN,
enmCFC_Purple = FOREGROUND_INTENSITY | FOREGROUND_RED | FOREGROUND_BLUE,
enmCFC_Cyan = FOREGROUND_INTENSITY | FOREGROUND_GREEN | FOREGROUND_BLUE,
enmCFC_Gray = FOREGROUND_INTENSITY,
enmCFC_White = FOREGROUND_RED | FOREGROUND_GREEN | FOREGROUND_BLUE,
enmCFC_HighWhite = FOREGROUND_INTENSITY | FOREGROUND_RED | FOREGROUND_GREEN | FOREGROUND_BLUE,
enmCFC_Black = ,
}; enum ConsoleBackGroundColor
{
enmCBC_Red = BACKGROUND_INTENSITY | BACKGROUND_RED,
enmCBC_Green = BACKGROUND_INTENSITY | BACKGROUND_GREEN,
enmCBC_Blue = BACKGROUND_INTENSITY | BACKGROUND_BLUE,
enmCBC_Yellow = BACKGROUND_INTENSITY | BACKGROUND_RED | BACKGROUND_GREEN,
enmCBC_Purple = BACKGROUND_INTENSITY | BACKGROUND_RED | BACKGROUND_BLUE,
enmCBC_Cyan = BACKGROUND_INTENSITY | BACKGROUND_GREEN | BACKGROUND_BLUE,
enmCBC_White = BACKGROUND_RED | BACKGROUND_GREEN | BACKGROUND_BLUE,
enmCBC_HighWhite = BACKGROUND_INTENSITY | BACKGROUND_RED | BACKGROUND_GREEN | BACKGROUND_BLUE,
enmCBC_Black = ,
}; void SetConsoleColor(ConsoleForegroundColor foreColor = enmCFC_White, ConsoleBackGroundColor backColor = enmCBC_Black)
{
HANDLE handle = GetStdHandle(STD_OUTPUT_HANDLE);
SetConsoleTextAttribute(handle, foreColor | backColor);
} int32_t main()
{
int32_t allForeColors[] = { enmCFC_Red, enmCFC_Green, enmCFC_Blue, enmCFC_Yellow, enmCFC_Purple, enmCFC_Cyan, enmCFC_Gray, enmCFC_White, enmCFC_HighWhite, enmCFC_Black };
std::string allForeColorsName[] = { "enmCFC_Red", "enmCFC_Green", "enmCFC_Blue", "enmCFC_Yellow", "enmCFC_Purple", "enmCFC_Cyan", "enmCFC_Gray", "enmCFC_White", "enmCFC_HighWhite", "enmCFC_Black" };
int32_t allBackColors[] = { enmCBC_Red, enmCBC_Green, enmCBC_Blue, enmCBC_Yellow, enmCBC_Purple, enmCBC_Cyan, , enmCBC_White, enmCBC_HighWhite, enmCBC_Black };
std::string allBackColorsName[] = { "enmCBC_Red", "enmCBC_Green", "enmCBC_Blue", "enmCBC_Yellow", "enmCBC_Purple", "enmCBC_Cyan", "", "enmCBC_White", "enmCBC_HighWhite", "enmCBC_Black " };
for(uint32_t i = ; i < sizeof(allForeColors) / sizeof(allForeColors[]); ++i)
{
for(uint32_t j = ; j < sizeof(allForeColors) / sizeof(allForeColors[]); ++j)
{
if(i != j && allBackColorsName[j] != "")
{
SetConsoleColor((ConsoleForegroundColor)allForeColors[i], (ConsoleBackGroundColor)allBackColors[j]);
std::cout << "ForeColor:" << allForeColorsName[i] <<",backColor:"<< allBackColorsName[j] << std::endl;
}
}
}
getchar();
return ;
}

C++ 设置控制台输出颜色的更多相关文章

  1. python之设置控制台字体颜色

    # 设置控制台输出字体颜色 # 格式:\033[显示方式;前景色;背景色m # 采用终端默认设置:\033[0m # 红色字体 print('\033[1;31m') print('*' * 10) ...

  2. python控制台输出颜色

    python_控制台输出带颜色的文字方法在开发项目过程中,为了方便调试代码,经常会向stdout中输出一些日志,默认的这些日志就直接显示在了终端中.而一般的应用服务器,第三方库,甚至服务器的一些通告也 ...

  3. Windows上C语言实现设置控制台的颜色

    这里设置只要调用system();这个函数就行了,参数是字符串,想要设置终端的颜色,按照以下格式可以设置: //数字表示前景色,字母表示背景色 //color 0=黑色 1蓝色 2 绿色 3湖蓝色 4 ...

  4. 【python】控制台输出颜色

    来源:http://www.cnblogs.com/yinjia/p/5559702.html 在开发项目过程中,为了方便调试代码,经常会向stdout中输出一些日志,默认的这些日志就直接显示在了终端 ...

  5. python设置文字输出颜色

    #!/usr/bin/env python # -*- coding:utf-8 -*- """ @Time: 2018/5/5 20:43 @Author: Jun H ...

  6. c windows控制台输出颜色文字

    #include <windows.h> //设置文字颜色void SetColor(int ForgC){ WORD wColor; //We will need this handle ...

  7. Linux终端和win32控制台文本颜色输出

    在使用putty.secureCRT.XShell等终端仿真器连接linux系统时,ls.vim等工具的输出都含有各种颜色,这些颜色的输出大大地增强了文本的可读性. 通常我们可以使用echo命令加-e ...

  8. Eclipse设置之:代码注释/server 控制台输出乱码解决

    1           Eclipse设置 Configure clean up style The location is here: And the configuration should fo ...

  9. C/C++控制台输出时设置字体及背景颜色

    1.改变整个控制台的颜色用 system("color 0A"); 其中color后面的0是背景色代号,A是前景色代号.各颜色代码如下: 0=黑色 1=蓝色 2=绿色 3=湖蓝色  ...

随机推荐

  1. eclipse搭建ssm框架的maven的工程

    版本:eclipse:Indigo Service Release 2.  jdk :jdk1.7.0_03. maven:apache-maven-3.3.3 . 上面的3个东西 先下载下来.然后运 ...

  2. 编写Shell脚本的最佳实践,规范二

    需要养成的习惯如下: 代码有注释 #!/bin/bash # Written by steven # Name: mysqldump.sh # Version: v1.0 # Parameters : ...

  3. 行为型设计模式之命令模式(Command)

    结构 意图 将一个请求封装为一个对象,从而使你可用不同的请求对客户进行参数化:对请求排队或记录请求日志,以及支持可撤消的操作. 适用性 抽象出待执行的动作以参数化某对象,你可用过程语言中的回调(c a ...

  4. windows技术

    鼠标右键菜单中没有新建文本文件怎么办? http://jingyan.baidu.com/article/046a7b3e1d737bf9c27fa9f7.html

  5. Netty源码学习(零)前言

    本系列文章将介绍Netty的工作机制,以及分析Netty的主要源码. 基于的版本是4.1.15.Final(2017.08.24发布) 水平有限,如有谬误请留言指正 参考资料 the_flash的简书 ...

  6. 「kuangbin带你飞」专题二十二 区间DP

    layout: post title: 「kuangbin带你飞」专题二十二 区间DP author: "luowentaoaa" catalog: true tags: - ku ...

  7. jQuery笔记:checkbox

    用jQuery操作checkbox时的一点小问题. 勾选checkbox的时候,$("#id").attr("checked")变为"checked& ...

  8. 洛谷——P1348 Couple number

    P1348 Couple number 题目描述 任何一个整数N都能表示成另外两个整数a和b的平方差吗?如果能,那么这个数N就叫做Couple number.你的工作就是判断一个数N是不是Couple ...

  9. [POI2014]Tourism

    题目大意: 给定一个$n(n\le20000)$条个点,$m(m\le25000)$条边的无向图,保证图中最长路径上的点数不超过$10$.对一个点染色的代价是$w_i$.求使得每个结点都被染色或至少有 ...

  10. 廖雪峰的git教程

    http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000