fwrite有时会在VS2012中打印额外的数据

时间:2016-09-20 09:24:11

标签: c++ visual-studio visual-studio-2012

我使用c ++函数“fwrite”在VS2012中打印1920个迭代的128个浮点元素的数组,在一些迭代中,516个字节的数据将被添加到BINARY FILE而不是512个字节,因此我必须使用以下内容解决这个问题的技术。

image2.convertTo(image4, CV_32F);
image3 = fourier(image2, 50000.0);
image4 = line(image3);
if ((ftell(lineResult) - 4) % 128 != 0)
{
    fseek(lineResult, -((ftell(lineResult) - 4) & 511), SEEK_CUR);
}
fwrite(
    image4.data,
    //The 2nd param is always 512
    sizeof(float) * image4.rows * image4.cols,
    1,
    lineResult
);

fflush(lineResult);

0 个答案:

没有答案