用c或c++怎么读取二进制文件中的double类型

如题所述

double占8字节。
1.用二进制模式打开文件
FILE* fd = fopen("your_file_path","rb");

2.精确定位文件到你要的数据处,(比如用fseek())

3。按字节读取8字节
double indata;
fread(&indata,1,8,fd);

4.如有必要(搞清你的二进制文件与本机的字节序是否相同),调整字节序
char* p = &indata;
char t = p[0]; p[0]=p[7]; p[7]=t; t=p[1]; p[1]=p[6]; p[6]=t; .....

5.使用得到的double值
上例中的indata就是读到的值
温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-04-06
FILE* f;
float n;
fscanf(n, "%d", f);
相似回答