我是靠谱客的博主 糟糕小鸭子,最近开发中收集的这篇文章主要介绍signal.h中的宏定义SIG_DFL及SIG_IGN,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

SIG_DFL,SIG_IGN 分别表示无返回值的函数指针,指针值分别是0和1,这两个指针值逻辑上讲是实际程序中不可能出现的函数地址值。
SIG_DFL:默认信号处理程序
SIG_IGN:忽略信号的处理程序

下面是一个指针值测试实例:

#include <stdio.h>
#define SIG_DFL ((void(*)(int))0)
#define SIG_IGN ((void(*)(int))1)

int main()
{
 int a = (int)SIG_DFL;
 int b = (int)SIG_IGN;
 
 printf("a = %d/n",a);  //0
 printf("b = %d/n",b);  //1

 return 0;
}

 

 

注:(void(*)())0表示将常数0转型为“指向返回值为void的函数的指针”。

最后

以上就是糟糕小鸭子为你收集整理的signal.h中的宏定义SIG_DFL及SIG_IGN的全部内容,希望文章能够帮你解决signal.h中的宏定义SIG_DFL及SIG_IGN所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(33)

评论列表共有 0 条评论

立即
投稿
返回
顶部