Untitled
#include <stdio.h> #include <stdlib.h> #include <signal.h> #include <unistd.h> #include <stdbool.h> int sigint_count = 0; void sigint_handler(int signal){ if(sigint_count == 0){ printf("\nCTRL-C 1\n"); sigint_count++; alarm(10); } else { printf("\nCTRL-C 2\n"); exit(0); } } void sigint_timeout(int signal){ sigint_count = 0; } int main() { signal(SIGINT, sigint_handler); signal(SIGALRM, sigint_timeout); int i=0; while(true) { printf("[%i]\n",i++); sleep(1); } return 0; }