read.c

来自「Linux可供用户空间和内核空间相互访问的字符设备驱动程序代码。」· C语言 代码 · 共 43 行

C
43
字号
#include <sys/stat.h>#include <stdio.h>#include <fcntl.h>#include <sys/time.h>#include <unistd.h>main(){ int fd,num; fd_set rfds; struct timeval tv; fd=open("/dev/globalvar",O_RDWR); if(fd!=-1) {    while(1)    {     FD_ZERO(&rfds);     FD_SET(fd,&rfds);     tv.tv_sec=5;     tv.tv_usec=0;     select(fd+1,&rfds,NULL,NULL,&tv);          if (FD_ISSET(fd,&rfds))     {       read(fd,&num,sizeof(int));       printf("The globalvar is %d\n",num);       if(num==0)       {         close(fd);         break;       }     }      else          printf("No data within 5 seconds.\n");     }  }  else  {    printf("device open failure\n");   }}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?