温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

0806编写一个程序,为进程打印SIGINT和SIGTERM信号的掩码

发布时间:2020-07-23 04:06:56 来源:网络 阅读:444 作者:银河星君 栏目:编程语言

/*

  • 编写一个程序,为进程打印SIGINT和SIGTERM信号的掩码
    */

#include <stdio.h>
#include <signal.h>
#include <string.h>

void pr_mask(int signum)
{
sigset_t sigset;
if(sigprocmask(0,NULL,&sigset)<0)
{
printf("sigprocmask error");
exit(0);
}
if(sigismember(&sigset,SIGINT))
printf("SIGINT\n");
if(sigimember(&sigset,SIGETERM))
{
printf("SIGTERM\n");
exit(0);
}
}

int main(int argc, char *argv[])
{
char buffer1[100],buffer2[100];
int i;
if(signal(SIGINT,&pr_mask)==-1)
{
printf("Couldn't register signal hanlder for SIGINT!\n");
exit(1);
}
if(signal(SIGTERM,&pr_mask)==-1)
{
printf("Couldn't register signal hanlder for SIGTERM!\n");
exit(1);
}
printf("Pid of This Process:%d\n",getpid());
//printf("Please input:\n");
for(;;)
{
printf("please input:\n");
fgets(buffer1,sizeof(buffer1),stdin);
for(i=0;i<100;i++)
{
if(buffer1[i]>=97&&buffer1<=122)
buffer2[i]=buffer1[i]-32;
else
buffer2[i]=buffer1[i];
}
printf("Your input is: %s\n",buffer2);
}
exit(0);
}

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI