c - 从控制台应用程序同步击键读取

标签 c windows linux

我想立即读取在 windows 和 linux 下用 c 编写的控制台应用程序的每个击键。不幸的是,当按下“输入/返回”键时,函数 gets(line) 只返回一个值。 我正在寻找一个在按下键后立即返回的函数。

目前我的代码看起来像这样:

char cTmp[MAX_LINE];
char line[MAX_LINE];
while( gets(line) != NULL) {
    sprintf(cTmp,"Characters entered: %c", line);
    puts(cTmp);
}

最佳答案

您可能正在寻找 getch() .在 Windows 上(至少是 VC++),它在 <conio.h> 中声明.在 Linux 上,它是 curses 的一部分。

关于c - 从控制台应用程序同步击键读取,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5164274/

相关文章:

c - 如何正确比较 C 中的字符串?

c++ - 调用指令中的偏移量损坏

linux - 管道到程序失败,但在 SSH 控制台中运行正常

linux - 1 用于获取服务器 IP 地址 (ifconfig) 并将主机名附加到/etc/hosts 以匹配 ipaddress 的内联脚本

c - Windows 中的二进制输出

Python:在 Linux 上更改指定 MIME 类型的默认应用程序

字符常量对其类型而言太长 (fgets)

c - 尝试从列表中删除节点时出现段错误?

javascript - Backstopjs 无法连接它启动的浏览器

c - 将数据动态复制到二维字符数组时发生访问冲突