【问题标题】:print a string when the SIGINT signal is ignored当 SIGINT 信号被忽略时打印一个字符串
【发布时间】:2013-10-24 08:56:23
【问题描述】:

我被要求编写一个程序来忽略SIGINT 信号并打印一条消息,说它已被忽略。这是我在参考 signalsigaction 的手册页后得出的结论。

    //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);

但是我很困惑当信号被忽略时我将如何打印消息。另一种选择是定义我自己的信号处理函数,但这样就不会忽略它,对吗?

【问题讨论】:

    标签: c unix signals posix sigint


    【解决方案1】:

    如果这是一个家庭作业,我猜这个请求是捕捉信号并在你的信号处理程序中打印一条消息。 SIGINT 的默认操作是终止进程,所以我猜“忽略”意味着不退出......,而不是 SIG_IGN。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-08-20
      • 2016-07-12
      • 2012-10-08
      • 1970-01-01
      • 2023-03-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多