Здравствуйте, задаю фиксированный размер консоли с помощью
system("mode con cols=80 lines=40");
затем вывожу поочередно символы в консоль, так вот, если нарисовать символ в позиции курсора [40][80], после этого он создает еще новую строчку, в связи с чем первая строчка удаляется. Вот код приложения:
#include <iostream>
#include <windows.h>
int main()
{
int kRows = 40;
int kColumns = 80;
unsigned char symbol = 0;
const unsigned char horizontal = 205;
const unsigned char vertical = 186;
const unsigned char corner_UpLeft = 201;
const unsigned char corner_UpRight = 187;
const unsigned char corner_DownLeft = 200;
const unsigned char corner_DownRight = 188;
HANDLE consoleHandle;
COORD cursorCoord;
SetConsoleCursorPosition(consoleHandle, cursorCoord);
system("mode con cols=80 lines=40"); // Размер консоли
for(int r = 0; r < kRows; r++)
{
for(int c = 0; c < kColumns; c++)
{
if((r == 0) && (c == 0))
symbol = corner_UpLeft;
else if((r == kRows - 1) && (c == 0))
symbol = corner_DownLeft;
else if((r == 0) && (c == kColumns - 1))
symbol = corner_UpRight;
else if((r == kRows - 1) && (c == kColumns - 1))
symbol = corner_DownRight;
else if((r == 0) || (r == kRows - 1))
symbol = horizontal;
else if((c == 0) || (c == kColumns - 1))
symbol = vertical;
else
symbol = 0;
cursorCoord.X = c;
cursorCoord.Y = r;
SetConsoleCursorPosition(consoleHandle, cursorCoord);
std::cout << symbol;
}
}
return 0;
}
Мне в консоли нужно вывести эту рамку, вопрос как не добавлять эту строчку? Или можно как то по другому справиться?
Виртуальный выделенный сервер (VDS) становится отличным выбором
Из файла нужно считать массив в таблицу, а затем производить манипуляции с этой таблицей: