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

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


慕田峪7331174
浏览 1177回答 3
3回答

波斯汪

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,最简单的,cin123456789#include&nbsp;<iostream>using&nbsp;namespace&nbsp;std;int&nbsp;main(){&nbsp;&nbsp;&nbsp;&nbsp;double&nbsp;dfloat;&nbsp;&nbsp;&nbsp;&nbsp;cin>>dfloat;&nbsp;&nbsp;&nbsp;&nbsp;cout<<"input:&nbsp;"<<dfloat;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;0;}方法2,scanf12345678910#include&nbsp;<iostream>#include&nbsp;<cstdio>using&nbsp;namespace&nbsp;std;int&nbsp;main(){&nbsp;&nbsp;&nbsp;&nbsp;double&nbsp;dfloat;&nbsp;&nbsp;&nbsp;&nbsp;scanf("%lf",&nbsp;&dfloat);&nbsp;//注意是lf,对应double&nbsp;&nbsp;&nbsp;&nbsp;cout<<"input:&nbsp;"<<dfloat;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;0;}&nbsp;
打开App,查看更多内容
随时随地看视频慕课网APP