在执行期间读取和写入大型多维数组到二进制文件并返回到数组?

时间:2013-11-18 14:35:10

标签: c++ multidimensional-array binaryfiles

我有一个大型的多维数组: float largetable [32] [256] [128] [3]

有没有办法将这个数组写入二进制文件并在C ++中轻松读回数组?

在VS2013中,我在头文件中有数据数组(这不是很好的形式) 但得到一个: 致命错误C1060:编译器没有堆空间

所以我想把它读进去是可以的。

我是一名python程序员,所以我对C ++相对较新

1 个答案:

答案 0 :(得分:1)

使用fwrite()函数一次性写入整个数组:

FILE* pFile = fopen("filename", "wb");
fwrite(largetable, sizeof(largetable), 1, pFile);
fclose(pFile);
读回来:

FILE* pFile = fopen("filename", "rb");
fread(largetable, sizeof(largetable), 1, pFile);
fclose(pFile);