Linux程序经常需要捕获一些中断信号,如按下CTRL+C就会触发SIGTERM信号等, if (atexit(&cleanup)) //atexit现在不鼓励用了,常用来做程序退出的后处理工作 { fprintf(stderr, "cannot set exit function/n"); return EXIT_FAILURE; } signal (SIGINT, &catch_int); signal (SIGTERM, &catch_term); #ifdef __WIN32__ signal (SIGBREAK, &catch_break); #else signal (SIGHUP, &catch_hup); signal (SIGQUIT, &catch_quit); #endif