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的函數的指針”。