Как считать нажатие клавиши - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Добрый день, начинаю изучать си, подскажите как считать событие при нажатии клавиши up, down, left, ... пытаюсь создать программу для управления роботом нужно что бы при нажатии UP (без нажатие ENTER) запускалась команда "вперед", а когда кнопка отжималась останавливалась, как это сделать?

Решение задачи: «Как считать нажатие клавиши»

textual
Листинг программы
#include <stdio.h>
#include <termios.h>
 
static struct termios stored;
 
void init() {
    struct termios settings;
 
    tcgetattr(0, &stored);
 
    settings = stored;
 
    settings.c_lflag &= (~ICANON);
    settings.c_lflag &= (~ECHO);
    settings.c_cc[VTIME] = 0;
    settings.c_cc[VMIN] = 1;
 
    tcsetattr(0, TCSANOW, &settings);
}
 
void reset() {
    tcsetattr(0, TCSANOW, &stored);
}
 
int main() {
    char ch;
 
    init();
 
    while ((ch = getc(stdin)) != 'q') {
        printf("key = %d\n", ch);
    }
 
    reset();
 
    return 0;
}

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

13   голосов , оценка 4 из 5
Похожие ответы