Coloured output in Turbo C++

Обновить

April 2019

Просмотры

8.9k раз

1

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

Я под управлением Windows 8.1 (64 бит) с процессором Intel Core i5-3317U CPU @ 1.70GHz

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

Ниже то, что, казалось, работали:

#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");это outputed , какo

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

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

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

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

3 ответы

0

you just need to add the clrscr(); function after the textcolor(); and it works with the couts

1

You can use the constream library for colored text output:

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

I don't know what to do about the tab character.

3

Ah, the 1990s called, they want their QEMM back :)

The one solution I can think of is to put this in your CONFIG.SYS:

DEVICE=C:\DOS\ANSI.SYS

and then output ANSI escape sequences.