| 
| 
 | Вопрос # 6 261/ вопрос решён / | 
 |  Здравствуйте, эксперты!Подскажите, как в системе Windows, осуществить ввод-вывод через консоль? Понимаю, что нужно использовать WinApi, но справочники довольно толстые и найти там что-то довольно трудно, поэтому и обращаюсь к вам.
 
 Если не затруднит, опишите поподробнее не только используемые функции, но и типы данных, которые они принимают. Также, если есть какие-либо нюансы, тоже буду рад знать.
 
|  |   Вопрос задал: Gooddy (статус: 3-ий класс)Вопрос отправлен: 13 сентября 2012, 18:20
 Состояние вопроса: решён, ответов: 0.
 |  
 Мини-форум вопросаВсего сообщений: 1; последнее сообщение — 14 сентября 2012, 05:02; участников в обсуждении: 1. 
|   | Gooddy (статус: 3-ий класс), 14 сентября 2012, 05:02 [#1]:Пока ждал ответа, всё таки перерыл справочники, нашёл функции WriteConsole и ReadConsole.
 
 Для их использования нужно получить хенлдеры ввода и вывода в консоль с помощью GetStdHandle.
 
 Что интересно функция ReadConsole требует заранее инициализированный буфер, я выбрался из этого так:
 1. Выделил большой участок памяти.
 2. Вызвал функцию ReadConsole.
 3. Выделил новый участок памяти размером в необходимое количество символов + 1 для завершающего 0.
 4. Переместил полученные данные в новый участок памяти.
 5. Освободил первый "временный" участок.
 6. Вернул указатель на строку.
 
 Кто вызывал пусть побеспокоится и освободит память по окончанию работы.
 Чисти код! Чисти код! Чисти код! |  14 сентября 2012, 05:02: Статус вопроса изменён на решённый (изменил автор вопроса — Gooddy) Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте. |