Раскраска вывода C ++ в Windows осуществляется через SetConsoleTextAttribute, где HANDLE консоли передавался вместе с атрибутами.Тем не менее, вызов SetConsoleTextAttribute является громоздким.К счастью, в Интернете есть много небольших библиотек и github, которые могут помочь, вам нужно просто выбрать одну с API, который вам нравится.Если вы хотите изменить цвета с помощью оператора <<, я рекомендую эту библиотеку только для заголовка <a href="https://github.com/ikalnitsky/termcolor" rel="nofollow">https://github.com/ikalnitsky/termcolor. API выглядит следующим образом:
using namespace termcolor;
std::cout << grey << "grey message" << reset << std::endl;
std::cout << red << "red message" << reset << std::endl;
Если необходимость сброса цвета отключает вас, попробуйтемоя библиотека.Он также только для заголовков, только для Windows, и позволяет легко окрашивать операторы printf: https://github.com/jrebacz/colorwin. API выглядит следующим образом:
using namepsace wincolor;
std::cout << color(gray) << "grey message\n";
std::cout << color(red) << "red message\n";
std::cout << "normal color\n";
{
withcolor scoped(red);
std::cout << "|red\n";
std::cout << "|red again\n";
}
std::cout << "normal color\n";
withcolor(cyan).printf("A cyan printf of %d\n", 1234);