我正在使用ncurses
库在屏幕上显示一些有趣的输出,但在程序的中间我需要暂时退出ncurses
模式。我致电endwin()
,之后我的程序应该可以使用printf()
向用户显示菜单。不幸的是,我的程序无法显示菜单。我在fflush()
之后尝试使用printf()
,然后才能在屏幕上显示菜单。
任何人都可以告诉我为什么,在我致电endwin()
后,终端无法恢复正常而我无法使用printf()
?
答案 0 :(得分:0)
在def_prog_mode
之前使用endwin
来保存状态。
返回后,请执行:reset_prog_mode
,然后refresh
。
您的原始屏幕将会显示。
是的,在使用printf后你必须这样做:fflush(stdout)。