バイナリ ファイルに格納されている 4 バイトの数値を読み込もうとしていますが、正しい出力が得られないようです。これが私のコードです:
#include <stdio.h>
#include <stdlib.h>
int main ()
{
int res;
FILE *file;
float v;
//Open file
file = fopen("prj3.dat", "rb");
if (!file)
{
printf("Unable to open file input.dat\n");
}
else
{
res = fread(&v, sizeof(v), 1, file);
if(res==-1)
{
printf("Unable to open file input.dat\n");
}
else
{
printf("v = %f\n", v);
}
}
return;
}
私の出力は v = -961576900.0000000 ですが、v = 3.14159 である必要があります。私の問題がどこにあるかについてのアイデアはありますか?
注意。input.dat はバイナリ ファイルです: 11010000 00001111 01001001 01000000
ありがとう