Мой компилятор - 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
в ярко-зеленом цвете. Минимальное изменение в моем коде было бы неплохо. Я даже не возражаю, чтобы изменить некоторые настройки моего эмулятора или компилятора или оболочки, чтобы сделать это.
Вся помощь очень ценится. Спасибо заранее =)
Ах, 1990-х годов, они хотят, чтобы их QEMM вернулся :)
Единственное решение, о котором я могу думать, это поместить это в ваш CONFIG.SYS:
DEVICE=C:\DOS\ANSI.SYS
а затем выводить escape-последовательности ANSI.
Вы можете использовать библиотеку constream для вывода цветного текста:
#include <constrea.h>
int main()
{
constream cout;
cout << setclr(2);
cout << "\n\t Hello, World!" << endl;
getch();
return 0;
}
Я не знаю, что делать с символом табуляции.
вам просто нужно добавить clrscr(); функция после textcolor(); и он работает с битами