#include #include void catch_it(int s) { // it is not safe to printf in a signal handler printf("caught signal %d\n", s); } int main(int argc, char** argv) { int i = 0; signal(SIGINT, catch_it); while (1) { sleep(1); printf("Loop %d\n", ++i); } return 0; }