Есть ответ 👍

Кто-нибудь может обьяснить что делает кусок кода поподробнее, по строчкам? class Screen {
HANDLE m_hStdout;
CONSOLE_CURSOR_INFO m_cursorInfo;
COORD m_screenSize;
DWORD m_screenBufSize;
DWORD m_consoleMode;
public:
Screen() {
m_hStdout = GetStdHandle(STD_ERROR_HANDLE);
GetConsoleCursorInfo(m_hStdout, &m_cursorInfo);
m_cursorInfo.bVisible = FALSE;
SetConsoleCursorInfo(m_hStdout, &m_cursorInfo);
CONSOLE_SCREEN_BUFFER_INFO csbi;
(m_hStdout, &csbi);
m_screenSize.X = csbi.srWindow.Right - csbi.srWindow.Left + 1;
m_screenSize.Y = csbi.srWindow.Bottom - csbi.srWindow.Top + 1;
m_screenBufSize = (DWORD)m_screenSize.X * m_screenSize.Y;
GetConsoleMode(m_hStdout, &m_consoleMode);
SetConsoleMode(m_hStdout, m_consoleMode | ENABLE_ECHO_INPUT);
}
~Screen() {
m_cursorInfo.bVisible = TRUE;
SetConsoleCursorInfo(m_hStdout, &m_cursorInfo);
SetConsoleMode(m_hStdout, m_consoleMode);
}
COORD getScreenSize() const { return m_screenSize; }
void out(const COORD &coord, char ch) {
SetConsoleCursorPosition(m_hStdout, coord);
DWORD chars_written;
WriteConsoleA(m_hStdout, &ch, DWORD(1), &chars_written, NULL);
}
void out_array(const char *buf, DWORD buflen) {
DWORD chars_written;
COORD coord{ 0,0 };
SetConsoleCursorPosition(m_hStdout, coord);
WriteConsoleA(m_hStdout, buf, buflen, &chars_written, NULL);
}
void cls() {
CONSOLE_SCREEN_BUFFER_INFO csbi;
COORD coordScreen = { 0, 0 };
DWORD cCharsWritten;
(m_hStdout, &csbi);
DWORD dwConSize = csbi.dwSize.X * csbi.dwSize.Y;
(m_hStdout, (TCHAR)' ', dwConSize, coordScreen, &cCharsWritten);
(m_hStdout, csbi.wAttributes, dwConSize, coordScreen, &cCharsWritten);
SetConsoleCursorPosition(m_hStdout, coordScreen);
}
};

214
468
Посмотреть ответы 1

Ответы на вопрос:


переведем время в секунды: 2мин = 120с

 

256000*120=30720000 бит

Реши свою проблему, спроси otvet5GPT

  • Быстро
    Мгновенный ответ на твой вопрос
  • Точно
    Бот обладает знаниями во всех сферах
  • Бесплатно
    Задай вопрос и получи ответ бесплатно

Популярно: Информатика

Caktus Image

Есть вопросы?

  • Как otvet5GPT работает?

    otvet5GPT использует большую языковую модель вместе с базой данных GPT для обеспечения высококачественных образовательных результатов. otvet5GPT действует как доступный академический ресурс вне класса.
  • Сколько это стоит?

    Проект находиться на стадии тестирования и все услуги бесплатны.
  • Могу ли я использовать otvet5GPT в школе?

    Конечно! Нейросеть может помочь вам делать конспекты лекций, придумывать идеи в классе и многое другое!
  • В чем отличия от ChatGPT?

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

Подпишись на наш телеграмм канал

GTP TOP NEWS