Программирование игр для Windows. Советы профессионала

       

Получение ASCII-кодов с клавиатуры


Давайте теперь посмотрим, как мы можем получить ASCII-символ, введенный с клавиатуры. Это может быть полезно, когда игрок вводит свое имя и нам нужны ASCII-коды. Мы можем получить скан-коды и транслировать их в ASCII, но к чему такие сложности, если сразу можно прочитать ASCII-коды?

Листинг 3.6 показывает функцию, которую мы будем часто использовать, работая с клавиатурой. Эта программа опрашивает клавиши и определяет их нажатие. Если символ введен, то функция возвращает его ASCII-код, в противном случае возвращается 0.

Листинг 3.6. Получение ASCII-кодов с клавиатуры.

unsigned char Get_Ascii_Key(void)

{

//если это нормальный ascii

код — возвращаем его, иначе 0

if (_bios_keybrd(_KEYBRD_READY))

return(_bios_keybrd(_KEYBRD_READ));

else

return(0);

}// конец

функции

Чтобы использовать функцию из Листинга 3.6, вы должны выполнить примерно следующие действия:

if (( c=Get_Ascii_Key()) > 0)

{

обработать_символ

} иначе

{

символов_нет

}



Содержание раздела