getch() 没有产生预期的结果
getch() doesnt produce the expected result
我正在 ncurses.I 开发一个程序,当我按 enter 键时它会启动一个计时器。我使用此代码:
while(( ch = wgetch(w)) != 'q' )
{
switch( ch ) {
...
case ENTER: /*timer is expected to start by a function*/
}
但是,我需要按住回车键才能启动计时器。我想要的是只需按 Enter 键即可启动计时器。我该如何解决这个问题?我有定时器功能。提前致谢。
我认为您需要将 nodelay
设置为 FALSE
并调用 cbreak()
以便 wgetch()
阻塞,等待输入的下一个字符,并且 return它。
nodelay(w, FALSE);
cbreak();
我已经有一段时间没有使用 ncurses 了,但如果我没记错的话,那应该可以了。让我知道。
我正在 ncurses.I 开发一个程序,当我按 enter 键时它会启动一个计时器。我使用此代码:
while(( ch = wgetch(w)) != 'q' )
{
switch( ch ) {
...
case ENTER: /*timer is expected to start by a function*/
}
但是,我需要按住回车键才能启动计时器。我想要的是只需按 Enter 键即可启动计时器。我该如何解决这个问题?我有定时器功能。提前致谢。
我认为您需要将 nodelay
设置为 FALSE
并调用 cbreak()
以便 wgetch()
阻塞,等待输入的下一个字符,并且 return它。
nodelay(w, FALSE);
cbreak();
我已经有一段时间没有使用 ncurses 了,但如果我没记错的话,那应该可以了。让我知道。