【发布时间】:2017-05-20 10:31:08
【问题描述】:
我正在使用 ncurses 用 C 语言编写程序。我正在尝试处理 CRTL C 信号。在我的代码中,这个信号被捕获和处理,但程序没有正确终止。会不会是我退出 ncurses 的方式?
//handle SIGINT signal
void handle_signal(int signal){
if(signal == SIGINT){
clear();
mvprintw(3,3,"A SIGNAL WAS ENCOUNTERED");
refresh();
sleep(1/2);
exit(0);
} //close if statement
}//close handle_signal() function
【问题讨论】:
-
sleep(1/2)?这些是两个整数,所以除法的结果也将是一个整数。所以这与调用sleep(0)相同。这是你想要的吗? -
我这样做只是为了测试以查看打印的消息。它没有解决任何问题:(