- 论坛徽章:
- 0
|
#include sys/stat.h>
#include sys/types.h>
#include fcntl.h>
#include sys/time.h>
#include unistd.h>
#include stdio.h>
int main(void)
{
int fd;
fd = open("/dev/input/event0", 0, 0);
if (fd 0) {
perror("open /dev/input/event0:");
exit(1);
}
for (;;) {
fd_set FdsRead;
int Result;
FD_ZERO(&FdsRead);
FD_SET(fd, &FdsRead);
if ( (Result = select(fd + 1, &FdsRead, NULL, NULL, NULL)) > 0) {
struct input_event {
struct timeval time;
unsigned short type;
unsigned short code;
long value;
} Point;
int ret = read(fd, &Point, sizeof Point);
if (ret != sizeof Point) {
printf("sizeof Point is %d, ret is %d\n", sizeof Point, ret);
perror("read /dev/input/event0:");
exit(1);
}
printf("Type: %d Code: %d \n", Point.type, Point.code);
}
}
return 0;
}
本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u2/68521/showart_680805.html |
|