温馨提示×

温馨提示×

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

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

0805编写一个程序,实现同一个信号处理函数对多个信号的处理

发布时间:2020-07-23 11:08:40 来源:网络 阅读:445 作者:银河星君 栏目:编程语言

/*

  • 编写一个程序,实现同一个信号处理函数对多个信号的处理
    */

#include <stdio.h>
#include <signal.h>
void intfunc(int signum);
void exitfunc(int signum);

int main(int argc, char *argv[])
{
char buffer1[100],buffer2[100];
int i;
if(signal(SIGINT,&intfunc)==-1)
{
printf("Couldn't register signal hanlder for SIGINT!\n");
exit(1);
}
if(signal(SIGTSTP,&intfunc)==-1)
{
printf("Couldn't register signal hanlder for SIGTSTP!\n");
exit(1);
}
if(signal(SIGTERM,&exitfunc)==-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);
}
void intfunc(int signum)
{
printf("catch signal %d\n",signum);
}
void exitfunc(int signum)
{
printf("signal SIGTERM\n");
exit(0);
}

向AI问一下细节

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

AI