Как изменить цвет для окна консоли в c++?

Пользователь

от christine , в категории: JavaScript , год назад

Как изменить цвет для окна консоли в c++?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от shirley.vonrueden , год назад

@christine 

Пользователь

от abel , 4 месяца назад

@christine 

Для изменения цвета текста и фона в консоли на C++ вы можете использовать библиотеку Windows API или ANSI escape sequences, в зависимости от операционной системы.


Пример с использованием ANSI escape sequences:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
#include <iostream>

int main() {
    // Изменение цвета текста
    std::cout << "" << "Красный текст" << "" << std::endl;

    // Изменение цвета фона и текста
    std::cout << "" << "Желтый текст на красном фоне" << "" << std::endl;

    return 0;
}


Если вы работаете в Windows и хотите использовать Windows API, вам потребуется подключить заголовочный файл windows.h и использовать функцию SetConsoleTextAttribute для изменения цветов:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
#include <iostream>
#include <windows.h>

int main() {
    HANDLE hConsole = GetStdHandle(STD_OUTPUT_HANDLE);
    
    // Изменение цвета текста
    SetConsoleTextAttribute(hConsole, FOREGROUND_RED);
    std::cout << "Красный текст" << std::endl;

    // Возвращение стандартного цвета
    SetConsoleTextAttribute(hConsole, FOREGROUND_RED | FOREGROUND_GREEN | FOREGROUND_BLUE);
    std::cout << "Стандартный текст" << std::endl;

    return 0;
}


Обратите внимание, что ANSI escape sequences могут не работать на всех консолях, поэтому если ваша консоль не поддерживает их, то может пригодиться Windows API для изменения цветов.