我一直在做一些阅读,我看,我可以使用的getch()得到一个按键。我所看到的是,这被认为是不好的做法,但我已经看到了冲突的意见。我写一个控制台应用程序为我的课,并希望能够根据被按下箭头键在屏幕上移动的标志(*)。是的getch()去了解这个方法不对,或者有更好的方法来捕获它。我希望他们只能够推箭头,不需要按回车或任何东西。我并不需要的代码而言,我只是想知道我是否应该避免的getch(),如果是这样,什么功能都没有这种类型的想法。

有帮助吗?

解决方案

getch()不在任一C或C的标准功能++。它在某些过时的编译器发现,如的Turbo C 和它也对一些常用这样的库定义作为诅咒,但在任何情况下,它是一个C函数,而不是C ++。对于C ++,你应该可能只是坚持使用标准的C ++ I / O。如果你因为某些原因,做到这一点,然后去最便携的选项,例如诅咒。

其他提示

您想从在非规范模式终端读取。使用tcsetattr()关闭ICANON标志。

使用的getch()它是否工作。为什么呢?

在Windows中可以使用pdcurses: http://pdcurses.sourceforge.net/ ,那就是兼容与ncurses的。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top