blob: c2925c6a473daaf60628a7515b00ea21be0a2eb3 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
|
#include <signal.h>
#include <stdio.h>
#include <errno.h>
void trap()
{
write(1, "Ouch!!\n", 7);
}
main()
{
char buf[2];
int cc;
signal(SIGINT, trap);
while( (cc=read(0, buf, 1)) > 0 || (cc == -1 && errno == EINTR) )
{
if( cc < 0 )
fprintf(stderr, "INTR\n");
else
fprintf(stderr, "%x\n", buf[0]);
}
write(1, "\nExit!\n", 7);
}
|