我只想更改控制台应用程序的前景色文本,而不是背景文本颜色或控制台背景颜色。换句话说:我想保留以前的颜色,除了前景色以外。
目前,我使用下面的代码,但文本下的背景也发生了变化。
#include <windows.h>
#include <iostream>
using namespace std;
int main(int argc, char* argv[])
{
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), FOREGROUND_GREEN);
cout << "green?" << endl;
cin.ignore();
return 0;
}
最佳答案
还要设置背景颜色(否则它将变为黑色)
例如:
绿色在红色背景上书写(注意:使用按位OR运算符|)
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), FOREGROUND_GREEN | BACKGROUND_RED);