fread
函数用于从流中读取数据到内存缓冲区中。它类似于
fscanf
函数,但适用于二进制文件。
size_t fread(void ptr, size_t size, size_t nmemb, FILE stream);
ptr
- 指向内存缓冲区的指针,用于存储从流中读取的数据。
size
- 每个元素的大小(以字节为单位)。
nmemb
- 要读取的元素数量。
stream
- 指向文件流的指针。
EAGAIN
- 流不支持非阻塞 I/O,并且在 O_NONBLOCK 标志设置的情况下进行读取操作。
EBADF
- 流描述符无效。
EINTR
- 读取操作被信号中断。
EINVAL
- size 或 nmemb 为 0。
EIO
- I/O 错误。
ENOMEM
- 内存不足。
PIPE
- 流是一个管道,并且在管道另一端没有读取器。
SIGPIPE
- 流是一个 FIFO 或管道,并且在管道另一端没有读取器,且 O_NONBLOCK 标志已设置。
fread
函数从文件中读取数据:
includeint main() {FILE fp;int Data[100];size_t num_read;fp = fopen("data.bin","rb");if (fp == NULL) {perror("无法打开文件");return 1;}num_read = fread(data, sizeof(int), 100, fp);fclose(fp);// 处理从文件中读取的数据...return 0; }
fWrite
- 将数据写入流中。
fseek
- 将流指针移动到指定的位置。
ftell
- 获取流指针的当前位置。
fread
函数可以读取任何类型的二进制数据,包括结构、数组和对象。
fread
函数只读取
size nmemb
字节的数据,无论数据在流中的实际大小如何。如果流中没有足够的数据来读取
size nmemb
字节,则
fread
函数将返回一个小于
nmemb
的值。
fread
函数不会自动将 null 终止符添加到从流中读取的字符串中。本文地址:https://www.qianwe.com/article/bb44fa33f27a9be2f542.html
上一篇:HTMLForm标签的使用html标签作用...
下一篇:HTMLFormElementsahrefs工具...