ncurses 库提供了一个交互式用户界面。但是,我想知道如果将某些内容输入到程序中会发生什么。所以我尝试这样:
# echo foo | my_curses_prog
标准输入上似乎总是有待处理的输入,但getch
无法读取任何内容。那么幕后到底发生了什么?
更新的测试程序:
#include <ncurses.h>
int main()
{
WINDOW *win = initscr();
nodelay(win, 0);
refresh();
FILE *fp = fopen("my_curses_prog.log", "w");
while (1) {
int ch = getch();
fprintf(fp, "%d\n", ch);
fflush(fp);
}
fclose(fp);
endwin();
return 0;
}