C++ 設定控制台輸出顏色

來源:互聯網
上載者:User

標籤:reg   set   []   黃色   技術   stream   ges   image   void   

#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        = 0,};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        = 0,};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, 0, enmCBC_White, enmCBC_HighWhite, enmCBC_Black };    std::string allBackColorsName[] = { "enmCBC_Red", "enmCBC_Green", "enmCBC_Blue", "enmCBC_Yellow", "enmCBC_Purple", "enmCBC_Cyan", "0", "enmCBC_White", "enmCBC_HighWhite", "enmCBC_Black " };    for(uint32_t i = 0; i < sizeof(allForeColors) / sizeof(allForeColors[0]); ++i)    {        for(uint32_t j = 0; j < sizeof(allForeColors) / sizeof(allForeColors[0]); ++j)        {            if(i != j && allBackColorsName[j] != "0")            {                SetConsoleColor((ConsoleForegroundColor)allForeColors[i], (ConsoleBackGroundColor)allBackColors[j]);                std::cout << "ForeColor:" << allForeColorsName[i] <<",backColor:"<< allBackColorsName[j] << std::endl;            }        }    }    getchar();    return 0;}

 

C++ 設定控制台輸出顏色

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.