gpt4 book ai didi

c++ - 读取原始数据文件,在 Matlab 和 C++ 中获取不同的值

转载 作者:太空狗 更新时间:2023-10-29 23:09:10 31 4
gpt4 key购买 nike

我正在将一些代码从 Matlab(我不熟悉)转换为 C++。部分代码读取原始数据文件并将每 8 位输入到矩阵的一个元素中。

MATLAB:

header=fread(fid, 512, '*uint8');

同样,在 C++ 中我有:

fread(&q1[0][0], sizeof(uint8_t), 512, filepath);

当然,它们都在读取同一个文件,并且它们吐出的值匹配到元素 #33。

10
0
0
0
244
1
0
0
10
0
0
0
244
1
0
0
10
0
0
0
244
1
0
0
10
0
0
0
208
7
0
0

然后,我的 C++ 程序输出“92”,而我的 Matlab 代码输出 180。值开始出现差异:

C++ / MATLAB
92 / 180
58 / 118
230 / 219
60 / 133

并继续继续,不匹配剩余的 512 个字节。

关于可能导致此问题的任何想法?

最佳答案

您是否使用二进制文件的“b”选项在 C++ 中打开文件?默认为“t”,文本模式,它将以不同方式解释换行/回车。

编辑:假设这是 Windows。如果不是 Windows,那么您可以忽略它。

关于c++ - 读取原始数据文件,在 Matlab 和 C++ 中获取不同的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6393060/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com