Проблема в том, что когда я набрал
printf("\033[1;32mHello World\033[0m");
печатает что-то вроде этого
[1;32mHello World[0m
в консоли. Мой код
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
int main(){
printf("\033[1;32mHello World\033[0m");
_getch();
return 0;
}
он отображает:
a box with a question mark inside->[1;32mHello World[0m
но должен быть цвет текста зеленого цвета Hello World.
_getch()
и#include <conio.h>
, зависящих от платформы, у меня работает. Убедитесь, что вы запускаете это на терминале, совместимом с ANSI. Окно вывода вашего компилятора, вероятно, неправильно интерпретирует символы ANSI, и оболочка, в которой вы находитесь, может не должен быть настроен на включение цветов. - person tadman   schedule 03.01.2019cat
в Windows выполняет обработку цвета, потому что знает, что терминал этого не сделает. - person Havenard   schedule 03.01.2019main()
не является классом, это определенная функция типаint
, предусмотренная стандартом C для размещенных сред, и может быть определена реализацией для автономных (встроенных) систем. Какую версию винды вы используете? Используется ли терминал после включения заголовка, который создает зеленый текст, тот же самый, что и без заголовка (что не имеет никакого смысла). Дайте нам знать. Тестирование в оболочке в Linux,printf "\033[1;32mHello World\n\033[0m"
работает отлично. - person David C. Rankin   schedule 03.01.2019