首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >使用SIGINT后恢复CTRL+C的默认行为

使用SIGINT后恢复CTRL+C的默认行为
EN

Stack Overflow用户
提问于 2018-06-09 04:59:57
回答 1查看 324关注 0票数 0

我需要编写一个函数,在按下CTRL+\后恢复CTRL+C (终止进程)的默认行为。下面是我的程序:

#include <stdlib.h>
#include <signal.h>
#include <stdio.h>
#include <unistd.h>

void sig_int(int sig)
{

    printf("U PRESSED CTRL+C\n");
}
void sig_quit(int sig){
            printf("CTRL+C NOW DO ITS KILLING JOB\n");

}
int main(int argc, char** argv) 
{
    signal(SIGINT,sig_int);
    signal(SIGQUIT, sig_quit);

    return 0;
}

感谢您的帮助和描述,以便更好地理解:)

EN

回答 1

Stack Overflow用户

发布于 2018-06-09 05:08:16

signal返回之前配置的处理程序,将其存储在某个位置,然后随时使用signal恢复它。此外,SIG_DFL还指向C运行时的默认处理程序,但这并不总是正确的。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50768335

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档