#include "common.h"
int main(void)
{
int len;
char buf[1024];
int fd = open("/dev/input/mouse0", O_RDONLY);
ERROR(fd < 0, "open mouse0", err1);
//建立两个文件描述符的可读可写状态,结构体
//fd, events, revents
struct pollfd pfd[2];
//你想监听的文件描述符
pfd[0].fd = 0;
//你所关心的事件
pfd[0].events = POLLIN;
pfd[1].fd = fd;
pfd[1].events = POLLIN;
while(1)
{
// printf("1-pfd[0].revents=%p\n", pfd[0].revents);
// printf("1-pfd[1].revents=%p\n", pfd[1].revents);
//返回已经准备好的文件描述符的个数
int res = poll(pfd, 2, -1);
printf("\033[32m");
printf("res=%d\n", res);
printf("\033[30m");
// printf("2-pfd[0].revents=%p\n", pfd[0].revents);
// printf("2-pfd[1].revents=%p\n", pfd[1].revents);
if(pfd[0].revents == POLLIN)
{
bzero(buf, 1024);
len = read(0, buf, 1024);
buf[len - 1] = '\0';
printf("%s\n", buf);
}
if(pfd[1].revents == POLLIN)
{
bzero(buf, 1024);
len = read(fd, buf, 1024);
printf("%s\n", buf);
}
}
return 0;
err1:
return -1;
}
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请
点击举报。