如何在Linux中使用getchar实现键盘控制

avatar
作者
猴君
阅读量:0

在 Linux 中,您可以使用 C 语言的 getchar() 函数来实现键盘控制

#include<stdio.h> #include <stdlib.h> #include <termios.h> #include <unistd.h>  int main() {     struct termios old_term, new_term;     int c;      // 获取当前终端设置     tcgetattr(STDIN_FILENO, &old_term);      // 复制旧的终端设置到新的设置中     new_term = old_term;      // 修改新的终端设置以实现无缓冲输入     new_term.c_lflag &= ~(ICANON | ECHO);      // 应用新的终端设置     tcsetattr(STDIN_FILENO, TCSANOW, &new_term);      printf("按下 'q' 键退出程序\n");      while (1) {         c = getchar();          if (c == 'q') {             break;         }          printf("您按下了 '%c' 键\n", c);     }      // 恢复旧的终端设置     tcsetattr(STDIN_FILENO, TCSANOW, &old_term);      return 0; } 

这个程序会在每次按键时立即读取字符,而不是等待用户按下回车键。当用户按下 ‘q’ 键时,程序将退出。在程序运行期间,您可以尝试按下其他键并查看程序的响应。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!