码迷,mamicode.com
首页 > 系统相关 > 详细

Linux底层文件访问---read系统调用

时间:2014-12-09 23:11:47      阅读:447      评论:0      收藏:0      [点我收藏+]

标签:des   style   blog   http   ar   sp   on   文件   数据   

系统调用read的作用是:从与文件描述符files相关联的文件里读入nbytes个字节的数据,并把她们放到数据区buf中。它返回实际读入的字符,这可能会小于请求的字节数。如果read调用返回0,就表示未读入任何数据,已到达了文件结尾。同样,如果返回的是-1,就表示read调用出现了错误。

#include <unistd.h>
<span style="font-family: Arial, Helvetica, sans-serif;">size_t read(int fildes, void *buf, size_t nbytes);</span>
下面这个程序test.c 把标准输入的前128个字节复制到标准输出。如果输入少于128个字节,就把它们全体复制过去。

#include <stdlib.h>

#include <unistd.h>


int main()

{
  
    char buffer[128];
  
    int nread;

  

    nread = read(0,buffer,128);
  
    if( nread == -1 )
    
        write(2,"A read error has occured\n",26);

   
    if( (write(1,buffer,nread)) != nread )
    
        write(2,"A write error has occured\n",27);

  

    exit(0);

}


测试结果

bubuko.com,布布扣


Linux底层文件访问---read系统调用

标签:des   style   blog   http   ar   sp   on   文件   数据   

原文地址:http://blog.csdn.net/u014488381/article/details/41831609

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!