цвета — цветной вывод в Turbo Stack Overflow

Мой компилятор Turbo C ++ v3.0 с DOS v5.0, эмулированный в DOSBox v0.74
Я использую это, потому что Turbo C ++ является компилятором, с которым
моя средняя школа решила преподавать язык программирования C ++.
Было подчеркнуто, что я использую этот компилятор при написании моего окончательного проекта.

Я использую Windows 8.1 (64-разрядную версию) с процессором Intel Core i5-3317U с частотой 1,70 ГГц

Ради живости и в знак уважения к массовой культуре,
Я хочу, чтобы на моих выходных экранах был зеленый текст.

Следующее — то, что, казалось, работало:

#include<iostream.h>
#include<conio.h>
void main(){
clrscr();
textcolor(2); // text set to green colour (conio.h function)
cprintf("\n\t Hello World"); // cprintf from conio.h
cout << "\n\t Hello World"; // cout from iostream.h
getch();
}

Выход которого следующий (экран был обрезан для экономии места в этом посте):

Привет, мир

Согласно разделу справки в Turbo C ++,

cprintf() отправляет форматированный вывод в текстовое окно на экране.

Как видите, текст, напечатанный на экране cout не зеленый, и мой проект состоит из множества cin а также cout и некоторые записи и чтения файлов.

Результат, который я желаю, можно (хотя я еще не пробовал), скорее всего, получить путем замены всех моих cout << "..."; с cprintf("...");
но я написал так много утверждений cout, что редактировать код будет очень сложно.

cprintf это новая территория для меня, и я немного удивлен тем, как
cprintf("\t"); считается как o

Так что я не хочу этим пользоваться. Я не хочу использовать это до тех пор, пока это не будет моим единственным вариантом.

Библиотеки cstdlib.h а также windows.h недоступны в Turbo C ++, и поэтому я не могу использовать их утилиты, чтобы получить то, что я хочу.

В конце концов, все, что мне нужно, это вывод на экран, чтобы отобразить текст, который я coutиздан в ярко-зеленом. Минимальное изменение в моем коде было бы неплохо.
Я бы даже не возражал против изменения некоторых настроек моего эмулятора, компилятора или оболочки.

Вся помощь очень ценится. Заранее спасибо =)

0

Решение

Ах, 90-е годы называются, они хотят вернуть свою QEMM 🙂

Единственное решение, которое я могу придумать, это поместить это в ваш файл CONFIG.SYS:

DEVICE=C:\DOS\ANSI.SYS

а затем вывести Escape-последовательности ANSI.

3

Другие решения

Вы можете использовать библиотеку constream для вывода цветного текста:

#include <constrea.h>
int main()
{
constream cout;
cout << setclr(2);
cout << "\n\t Hello, World!" << endl;
getch();
return 0;
}

Я не знаю, что делать с символом табуляции.

1

вам просто нужно добавить clrscr (); функция после textcolor (); и это работает с койками

0
По вопросам рекламы [email protected]