c++ console color
SetConsoleTextAttribute(console, ((int)background * 16) + (int)forground);
c++ console color
SetConsoleTextAttribute(console, ((int)background * 16) + (int)forground);
console colors in C++
//This is a header file taken from cplusplus.com
//http://www.cplusplus.com/articles/Eyhv0pDG/
//concol.h
#ifndef _INC_EKU_IO_CONCOL
#define _INC_EKU_IO_CONCOL
/*Header file to color text and background in windows console applications
Global variables - textcol,backcol,deftextcol,defbackcol,colorprotect*/
#include<windows.h>
#include<iosfwd>
namespace eku
{
#ifndef CONCOL
#define CONCOL
enum concol
{
black=0,
dark_blue=1,
dark_green=2,
dark_aqua,dark_cyan=3,
dark_red=4,
dark_purple=5,dark_pink=5,dark_magenta=5,
dark_yellow=6,
dark_white=7,
gray=8,
blue=9,
green=10,
aqua=11,cyan=11,
red=12,
purple=13,pink=13,magenta=13,
yellow=14,
white=15
};
#endif //CONCOL
HANDLE std_con_out;
//Standard Output Handle
bool colorprotect=false;
//If colorprotect is true, background and text colors will never be the same
concol textcol,backcol,deftextcol,defbackcol;
/*textcol - current text color
backcol - current back color
deftextcol - original text color
defbackcol - original back color*/
inline void update_colors()
{
CONSOLE_SCREEN_BUFFER_INFO csbi;
GetConsoleScreenBufferInfo(std_con_out,&csbi);
textcol = concol(csbi.wAttributes & 15);
backcol = concol((csbi.wAttributes & 0xf0)>>4);
}
inline void setcolor(concol textcolor,concol backcolor)
{
if(colorprotect && textcolor==backcolor)return;
textcol=textcolor;backcol=backcolor;
unsigned short wAttributes=((unsigned int)backcol<<4) | (unsigned int)textcol;
SetConsoleTextAttribute(std_con_out,wAttributes);
}
inline void settextcolor(concol textcolor)
{
if(colorprotect && textcolor==backcol)return;
textcol=textcolor;
unsigned short wAttributes=((unsigned int)backcol<<4) | (unsigned int)textcol;
SetConsoleTextAttribute(std_con_out,wAttributes);
}
inline void setbackcolor(concol backcolor)
{
if(colorprotect && textcol==backcolor)return;
backcol=backcolor;
unsigned short wAttributes=((unsigned int)backcol<<4) | (unsigned int)textcol;
SetConsoleTextAttribute(std_con_out,wAttributes);
}
inline void concolinit()
{
std_con_out=GetStdHandle(STD_OUTPUT_HANDLE);
update_colors();
deftextcol=textcol;defbackcol=backcol;
}
template<class elem,class traits>
inline std::basic_ostream<elem,traits>& operator<<(std::basic_ostream<elem,traits>& os,concol col)
{os.flush();settextcolor(col);return os;}
template<class elem,class traits>
inline std::basic_istream<elem,traits>& operator>>(std::basic_istream<elem,traits>& is,concol col)
{
std::basic_ostream<elem,traits>* p=is.tie();
if(p!=NULL)p->flush();
settextcolor(col);
return is;
}
} //end of namespace eku
#endif //_INC_EKU_IO_CONCOL
output to console in color c++
Name FG BG
Black 30 40
Red 31 41
Green 32 42
Yellow 33 43
Blue 34 44
Magenta 35 45
Cyan 36 46
White 37 47
Bright Black 90 100
Bright Red 91 101
Bright Green 92 102
Bright Yellow 93 103
Bright Blue 94 104
Bright Magenta 95 105
Bright Cyan 96 106
Bright White 97 107
console colors in C++
//This is one way to do it. Taken from stackoverflow.
system("color 70");
//It just runs a cmd command.
Copyright © 2021 Codeinu
Forgot your account's password or having trouble logging into your Account? Don't worry, we'll help you to get back your account. Enter your email address and we'll send you a recovery link to reset your password. If you are experiencing problems resetting your password contact us