gpt4 book ai didi

linux - 即使终端关闭,如何从 STDIN_FILENO 读取?

转载 作者:太空宇宙 更新时间:2023-11-04 11:19:40 25 4
gpt4 key购买 nike

我试图在 Linux 中编写一个程序来读取来自键盘的每个输入,但是使用 STDIN_FILENO 它只读取在终端中输入的那些。我想要的是在执行期间它应该读取键盘,即使终端关闭也是如此。

最佳答案

STDIN_FILENO 只是一个辅助宏。

从 stdin 您收到传递给您的程序的字节流,它们不一定来自终端 - 也可以来自文件等。它不捕获键盘。终端正在捕获键盘,然后将输入的数据传递给程序的标准输入。

为了捕获键盘,您将需要一些其他接收事件的方法。我猜你正在运行 GUI aka X 服务器;通常,应用程序创建窗口并接收与其相关的事件。为了捕获所有键盘事件,您将不得不进行更底层的操作。看看 xlib,它应该对你足够了,即使它可能不够。

关于linux - 即使终端关闭,如何从 STDIN_FILENO 读取?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19065929/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com