C++将一个vector<float>类型的数组写入二进制文件
时间: 2023-12-07 17:05:56 浏览: 251
可以使用文件流(fstream)来将vector<float>类型的数组写入二进制文件。具体步骤如下:
1. 打开二进制文件,创建文件流对象:
```
std::fstream file("filename.bin", std::ios::out | std::ios::binary);
```
2. 将vector<float>类型的数组写入文件:
```
std::vector<float> data = {1.0, 2.0, 3.0};
file.write(reinterpret_cast<const char*>(data.data()), data.size() * sizeof(float));
```
这里使用了reinterpret_cast将vector中的数据转换成const char*类型的指针,再使用write函数将数据写入文件。需要注意的是,write函数的第二个参数是写入数据的字节数。
3. 关闭文件流:
```
file.close();
```
完整代码如下:
```
#include <fstream>
#include <vector>
int main() {
std::fstream file("filename.bin", std::ios::out | std::ios::binary);
std::vector<float> data = {1.0, 2.0, 3.0};
file.write(reinterpret_cast<const char*>(data.data()), data.size() * sizeof(float));
file.close();
return 0;
}
```
阅读全文