我正在尝试将数据写入二进制文件,然后从文件中读回数据。数据由单个数字(整数)nrows 组成。下面是我将数据写入二进制文件的代码。但是,当我尝试读回数据并使用 printf 打印结果时,我得到了一个无意义的结果:-2。
FILE *fout;
FILE *file_pointer;
int nrows = 5;
fout = fopen("matrixB.bin", "wb") //Writing to a binary file.//
fwrite(&nrows, sizeof(int), 1, fout); //Writing the number nrows to the binary file "matrixB.bin"//
file_pointer = fopen("matrixB.bin", "rb"); //Reading a binary file.//
fread(&nrows, sizeof(int), 1, file_pointer);
printf("%d", nrows); //Here -2 is printed, instead of 5.//
我的代码有什么问题?