Получить позицию курсора консоли - PullRequest
0 голосов
/ 19 июня 2020

Я новичок в C ++, и мне было интересно, есть ли способ получить позицию курсора консоли (x, y)?

Например, в C# я могу использовать:

Console.CursorLeft для X и Console.CursorTop для Y

1 Ответ

2 голосов
/ 19 июня 2020

Если вы находитесь на Windows, вы можете сделать это (обработка ошибок опущена для краткости):

HANDLE hConsoleOutput = GetStdHandle (STD_OUTPUT_HANDLE);
CONSOLE_SCREEN_BUFFER_INFO csbi = { };
BOOL ok = GetConsoleScreenBufferInfo (hConsoleOutput, &csbi);

Текущая позиция курсора должна быть в csbi.dwCursorPosition;

Документация здесь и здесь .

На платформах Unix вы должны использовать библиотеку ncurses .

...