c - 在 C 文件中存储和恢复结构

标签 c file struct restore

我需要在文件中存储一个结构,然后读回它以返回它。 我会尝试像这样将它写入文件:

void lld_tpWriteCalibration(struct cal cal) {
    FIL fdst;      /* file objects */
   UINT bw;        /* File write count */

    /* Create destination file on the drive 0 */
    wf_open(&fdst, "0:calibration.txt", FA_CREATE_ALWAYS | FA_WRITE);
    wf_write(&fdst, cal, sizeof(cal), &bw);

    wf_close(&fdst);
}

那行得通吗? 我怎样才能读回它并从此函数返回它?

struct cal lld_tpReadCalibration(void) {

}

结构是:

   struct cal {
       float xm; 
       float ym; 
       float xn; 
       float yn; 
   };

感谢您的帮助。

最佳答案

您可以像存储结构一样检索结构。

read(&fdst, &cal, sizeof(cal));

但是你必须要小心,因为endianess,你不能在每个架构上都这样做问题。

关于c - 在 C 文件中存储和恢复结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12753659/

相关文章:

改变颜色定义 ncurses C

c++ - 使用 malloc 分配比现有内存更多的内存

HC-SR04 超声波传感器的 C 程序未显示正确的距离

C# BinaryWrite 通过 SSL

c - 如何为结构的结构成员赋值?

c - 打印多个值

java - 在java中使用vigenere密码加密字节数组

php - Laravel request() 输入文件和输入隐藏同名

swift - 无法通过扩展将初始值设定项添加到 Swift 中的结构

visual-c++ - Visual C++ 2008 中的结构成员对齐