Я использую данный код для обработки щелчков мыши. Однако это не работает. Я прошел через input.h, чтобы понять это, но не смог. Байт равен 1, когда он достигает условия if, но мой код все еще не позволяет выполнению войти внутрь, если условие. Что это здесь делается неправильно:
const char *mfile = "/dev/input/mice";
int main()
{
int fd, bytes;
struct input_event data;
fd = open(mfile, O_RDWR | O_NONBLOCK);
if(fd == -1)
{
printf("ERROR Opening associated device file: /dev/input/mice \n");
return -1;
}
while(1)
{
bytes = read(fd, &data, sizeof(struct input_event));
if(bytes > 0)
{
if((data.code == BTN_LEFT) && (data.value == 0))
printf("Left pressed. \n");
else if((data.code == BTN_RIGHT) && (data.value == 0))
printf("Right presseed. \n");
}
}
close(fd);
return 0;
}