sigaction構造体をあらかじめmemset()で0クリアしてから、sa_handlerにシグナルハンドラの関数名を代入します。
#include#include #include #include static void func_int() { write(2, "SIGINT\n", 7); } int main() { struct sigaction act; memset(&act, 0, sizeof act); act.sa_handler = func_int; if (sigaction(SIGINT,&act, NULL) < 0){ perror("sigaction"); return 1; } sleep(60); return 0; }