为了账号安全,请及时绑定邮箱和手机立即绑定

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

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

C++
噜噜哒 2019-05-16 10:10:42
用c或c++怎么读取二进制文件中的double类型
查看完整描述

3 回答

?
繁星点点滴滴

TA贡献1803条经验 获得超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就是读到的值



查看完整回答
反对 回复 2019-05-17
?
慕容3067478

TA贡献1773条经验 获得超3个赞

方法1,最简单的,cin

1

2

3

4

5

6

7

8

9

#include <iostream>

using namespace std;

int main()

{

    double dfloat;

    cin>>dfloat;

    cout<<"input: "<<dfloat;

    return 0;

}

方法2,scanf

1

2

3

4

5

6

7

8

9

10

#include <iostream>

#include <cstdio>

using namespace std;

int main()

{

    double dfloat;

    scanf("%lf", &dfloat); //注意是lf,对应double

    cout<<"input: "<<dfloat;

    return 0;

}


 



查看完整回答
反对 回复 2019-05-17
  • 3 回答
  • 0 关注
  • 413 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信