루프를 실행하지만 5 초 동안 CTRL-C를 사용하여 종료 할 수없는 프로그래밍을 작성하는 방법을 알아야하지만 5 초 후에 CTRL-C를 사용하여 프로그램을 종료 할 수 있습니다. 나는 시스템 호출에 대해 읽고 있었지만, 어디서부터 시작해야 할지를 알 수 없다. 누군가가 올바른 방향으로 나를 가리킬 수 있다면 정확한 지시가 있습니다. 고맙습니다.시스템 호출을 사용하는 데 문제가 있습니다
루프를 생성하고 컨트롤 C로 5 초 동안 죽일 수없는 시스템 호출을 사용하는 C 프로그램을 작성하십시오. 그것이 시작되면 "나는 루핑을 시작했고^C로 죽일 수 없다. . "그런 다음 매초마다"계속 반복됩니다. "라는 메시지를 인쇄합니다. . . "5 초 후에 제어 C로 루프를 종료하고"여전히 반복하고 있지만^C로 죽일 수있다 "라는 메시지를 표시합니다. 사용자가 죽일 때까지 매 초마다 표시됩니다.
[sigaction] (http://man7.org/linux/man-pages/man2/sigaction.2.html)을 사용하여 Ctrl-C (SIGINT)를 캡처 할 수 있습니다. 가능한 sigaction에 대한 [예제 코드] (http://stackoverflow.com/questions/4217037/catch-ctrl-c-in-c). – SSC
재미있는 방법은 인터럽트 문자를 처음 5 초 동안 control-T로 설정 한 다음 다시 control-C로 설정하는 것입니다. –