|

楼主 |
发表于 2004-3-26 20:36:38
|
显示全部楼层
read()和write()的用法我是看这个例程的,但我看了很久都看不懂@@@@
- #include "unp.h"
- ssize_t
- readline(int fd,void *vptr,size_t maxlen)
- {
- ssize_t n,rc;
- char c,*ptr;
- ptr=vptr;
- for(n=1;n<maxlen;n++) {
- again:
- if((rc=read(fd,&c,1)) == 1) {
- *ptr ++=c ;
- if(c == '\n')
- break; /* newline is sotred,like fgets() */
- }else if(rc==0) {
- if(n==1)
- return(0); /* EOF,no data read */
- else
- break; /* EOF,some data was read */
- }else {
- if(errno==EINTR)
- goto again;
- return(-1); /* error,errno set by read() */
- }
- }
- *ptr = 0 ; /* null terminate like fgets() */
- return(n);
- }
复制代码
从一个描述字读文本文件,一次一个字节@-@,难道教程错了,我也感到上一贴read() and writea()的用法不对头/ |
|