fread 在c++用法示例
时间: 2023-06-22 20:33:51 浏览: 61
在C++中,可以使用`fread`函数从文件中读取二进制数据。以下是一个简单的示例代码,演示如何使用`fread`从文件中读取二进制数据:
```c++
#include <iostream>
#include <cstdio>
int main() {
FILE* fp = fopen("data.bin", "rb"); // 打开二进制文件
if (fp == nullptr) {
std::cout << "Failed to open file!" << std::endl;
return 1;
}
int data[10]; // 假设要读取包含10个整数的数组
size_t elements_read = fread(data, sizeof(int), 10, fp); // 从文件中读取数据
if (elements_read != 10) {
std::cout << "Failed to read data!" << std::endl;
fclose(fp);
return 1;
}
fclose(fp); // 关闭文件
// 输出读取到的数据
for (int i = 0; i < 10; i++) {
std::cout << data[i] << std::endl;
}
return 0;
}
```
在代码中,首先打开一个二进制文件(`data.bin`),并检查文件是否成功打开。然后,声明一个包含10个整数的数组,使用`fread`函数从文件中读取数据,并检查读取的元素数量是否正确。最后,关闭文件并输出读取到的数据。
请注意,`fread`函数的第一个参数是指向要读取数据的缓冲区的指针,第二个参数是每个元素的大小,第三个参数是要读取的元素数量,最后一个参数是指向文件指针的指针。函数返回值是成功读取的元素数量,如果返回值小于请求的元素数量,则可能表示已经到达文件的末尾或出现了读取错误。
阅读全文