【发布时间】:2019-05-17 02:25:02
【问题描述】:
这是我的代码:
FILE* fLeftResult = fopen("C:/Users/Vincenzo/Desktop/unina/SOC/progetto esame/elaborazione fir/ResultLowLeft.bin","r+");
short output;
short matlabIdeal[SAMPLES+1] = {0};
size_t returnValue= fread(matlabIdeal, sizeof(short), SAMPLES, fLeftResult);
当 SAMPLES 为 6077 时,数组 matlabIdeal 被填充到第 4095 个值。连续值为 0。returnValue 为 1433。
当 SAMPLES 为 60772 时,数组 matlabIdeal 被填充到第 59391 个值。连续值为 0。returnValue 为 1433。
当 SAMPLES 为 30772 时,数组 matlabIdeal 被填充到第 30719 个值。连续值为 0。returnValue 为 1433。
fread() 填充的值是正确的,但是突然变成了 0。 这是 fread 读取的二进制文件:https://ufile.io/sf85m 你能帮我解决这个问题吗?或者在你的电脑上重现代码看看会发生什么?
【问题讨论】: