gpt4 book ai didi

linux - 如何在 Linux 中使用 D 编程语言取消缓冲输入?

转载 作者:太空狗 更新时间:2023-10-29 11:09:15 25 4
gpt4 key购买 nike

默认情况下,如果不等待用户按回车键,您无法在 Unix 中获得终端输入。我怎样才能立即获得输入?我在 debian Linux 上使用 gdc,所以我不能使用 ncurses。谢谢。

最佳答案

ncurses 是一个很好的解决方案,应该适用于几乎所有带有任何编译器的 linux 安装...

但是如果你不想使用 ncurses,还有一些其他的选择:

在文件底部附近查找 version(Demo) void main()RealTimeConsoleInput 为您提供带有即时输入和其他信息(鼠标、调整大小等)的事件循环。

  • 您也可以使用适当的 tcgetattrtcsetattr 调用更改终端模式,然后正常执行其他所有操作。您需要为函数import core.sys.posix.termios;import core.sys.posix.unistd;,然后其余的操作与在 C.

方法如下:

 termios old;
tcgetattr(1, &old);
scope(exit) tcsetattr(1, TCSANOW, &old); // put the terminal back to how it was
auto n = old;
n.c_lflag &= ~ICANON; // turn off canonical mode
tcsetattr(1, TCSANOW, &n); // do the change

然后您可以立即使用输入。

关于linux - 如何在 Linux 中使用 D 编程语言取消缓冲输入?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22131283/

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