我被要求编写一个程序,该程序将忽略该SIGINT
信号并打印一条消息,说它已被忽略。这是我在参考 and 的手册页后想到signal
的sigaction
。
//set struct action to ignore signal
struct sigaction action;
action.sa_handler=SIG_IGN;//handler set to ignore the signal
action.sa_flags=0;
//registeration
sigaction(SIGINT,&action,0);
但是我很困惑当信号被忽略时我将如何打印一条消息。另一种选择是定义我自己的信号处理函数,但这样就不会忽略它,对吗?