出于某种原因,每当我尝试打印一个字符串时,当我进入while循环时它不会刷新屏幕......我可能做错了什么?
#include<ncurses.h>
#include<stdlib.h>
int main()
{
initscr(); /* Start curses mode */
while(1);
{
printw("hi there");
refresh();
sleep(1);
}
endwin(); /* End curses mode */
return 0;
}
它只是挂在终端上,什么都不做。它确实在运行,因为我的CPU增加但没有任何显示。如果我删除while循环,它就可以正常工作。仅供参考,我正在测试它,因为计时器将会在此处显示并且将显示正在不断变化的附加数据。
答案 0 :(得分:4)
这是因为在while
条件结束时你有一个分号:
while(1); // <--- Remove the ;
任何体面的编译器都应该警告你。