📄 read_fifo.c
字号:
#include "fifo.h"/* read data from FIFO */int main(int argc, char **argv ){ int fd; char buffer[BUFFER_SIZE]; ssize_t n; if( argc < 2 ) { fprintf( stdout, "Usage:%s <filename>\n",argv[0] ); exit(1); } /* open FIFO */ if( (fd = open(argv[1], O_RDONLY)) < 0 ) { fprintf( stderr, "open FIFO %s for reading failed:%s\n", argv[1], strerror(errno) ); exit(1); } fprintf( stdout, "open FIFO %s for reading successed.\n", argv[1] ); while( 1 ) { again: if( (n = read( fd, buffer, BUFFER_SIZE )) < 0 ) { printf( "waiting..." ); if( errno == EINTR ) { printf( "waiting..." ); goto again; } else { fprintf( stderr, "read failed on %s:%s\n", argv[1], strerror(errno) ); exit(1); } } else if( n == 0 ) { fprintf( stderr, "peer closed fifo.\n" ); break; } else { buffer[n-1] = '\0'; fprintf( stdout, "read %d bytes from FIFO:%s\n", n, buffer ); } } return 0;}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -