1. 首页
  2. 考试认证
  3. 其它
  4. read函数-hds ams 2500用户手册

read函数-hds ams 2500用户手册

上传者: 2024-07-22 18:50:46上传 PDF文件 17.98MB 热度 16次

3.7 read函数用read函数从打开文件中读数据。#include ssize_t read(int filed, void *buff, size_t nbytes); 返回:读到的字节数,若已到文件尾为0,若出错为-1。如read成功,则返回读到的字节数。如已到达文件的尾端,则返回0。有多种情况可使实际读到的字节数少于要求读字节数:

  • 读普通文件时,在读到要求字节数之前已到达了文件尾端。若在到达文件尾端之前还有30个字节,而要求读100个字节,则read返回30,下一次再调用read时,它将返回0(文件尾端)。

  • 当从终端设备读时,通常一次最多读一行(第11章将介绍如何改变这一点)。

  • 当从网络读时,网络中的缓冲机构可能造成返回值小于所要求读的字节数。

  • 某些面向记录的设备,例如磁带,一次最多返回一个记录。读操作从文件的当前位移量处开始,在成功返回之前,该位移量增加实际读得的字节数。

POSIX.1在几个方面对此函数的原型作了更改。其经典定义是:int read(int filed, char *buff, unsigned nbytes); 为了与ANSI C一致,其第二个参数由char *改为void *。在ANSI C中,类型void *用于表示类属指针。其次,其返回值必须是一个带符号整数(ssize_t),以返回正字节数、0(表示文件尾端)或-1(出错)。第三个参数在历史上是一个不带符号整数,以允许一个16位的实现可以一次读或写至65534个字节。在1990 POSIX.1标准中,引进了新的基本系统数据类型。

更多详细信息请参考POSIX标准以及函数接口查询,或者查看ISO POSIX Linux Unix标准C函数速查手册。你也可以从unix函数原型中了解更多内容。

如果你对Python中的read函数感兴趣,可以参考这篇Python read函数按字节字符读取文件的实现文章。如果你需要了解在MATLAB中如何读取函数文件,推荐阅读matlab读取函数文件

还有更多关于read函数调用过程的详细剖析,可以查看read函数调用过程剖析,相信这些资源可以帮助你更好地理解和使用read函数!

下载地址
用户评论