如何更改文字和背景颜色?

Tpr*_*e88 11 c++ windows

我希望每个角色都是不同的颜色.

例如,

cout << "Hello world" << endl;
Run Code Online (Sandbox Code Playgroud)
  • H会变红
  • e会是蓝色的
  • 会是橙色等等.

我知道这可以做到,我只是不知道它的代码.

我想将背景颜色更改为白色.我该怎么办?

App*_*ker 12

没有(标准的)跨平台方式来做到这一点.在Windows上,尝试使用conio.h.它有:

textcolor(); // and
textbackground();
Run Code Online (Sandbox Code Playgroud)

功能.

例如:

textcolor(RED);
cprintf("H");
textcolor(BLUE);
cprintf("e");
// and so on.
Run Code Online (Sandbox Code Playgroud)


小智 8

你可以使用这个功能system.

system("color *background**foreground*");
Run Code Online (Sandbox Code Playgroud)

对于背景和前景,请键入0 - 9之间的数字或A - F中的字母.

例如:

system("color A1");
std::cout<<"hi"<<std::endl;
Run Code Online (Sandbox Code Playgroud)

这将显示带有绿色背景和蓝色文字的字母"hi".

要查看所有颜色选择,只需输入:

system("color %");
Run Code Online (Sandbox Code Playgroud)

看什么数字或字母代表什么颜色.

  • 它改变了整个控制台的颜色并且在其他操作系统中不可移植。 (3认同)

Mik*_*wan 6

SetConsoleTextAttribute.

HANDLE hStdOut = GetStdHandle(STD_OUTPUT_HANDLE);
SetConsoleTextAttribute(hStdOut, FOREGROUND_RED | BACKGROUND_BLUE | BACKGROUND_GREEN | BACKGROUND_RED);
Run Code Online (Sandbox Code Playgroud)

这将在白色背景上产生红色文本.