我的教授告诉我在读/写二进制文件时不要使用sizeof(double)。现在,他告诉了我原因,但我忘了。示例:
double grade;
fread(grade, sizeof(double), 1, fp) != 1
但是,相反:
fread(grade, 4, 1, fp) != 1
现在,技巧是 double 可能是 4 或 8 个字节,那么在这种情况下该怎么办?
最佳答案
最好使用sizeof(grade)
,因为如果你改变变量类型,这条线仍然可以正常工作。也许他会这么说?
fread(&grade, sizeof(grade), 1, fp)
但我认为没有理由直接写入该值,因为它可能无法在其他系统上工作。
关于c - 为什么我不应该在 C 文件中使用 sizeof(double),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36371439/