代码之家  ›  专栏  ›  技术社区  ›  NeerP84

如何读入二进制文件并将数据存储在C中的指针上

  •  -1
  • NeerP84  · 技术社区  · 7 年前

    所以我在做一个项目,但我没能把所有的部分放在一起,使这项工作。我们需要读入二进制文件的头并将它们存储在指定的指针上。

    int read_header (FILE *file, elf_hdr_t *hdr);
    

    我了解如何将信息传递给函数,但无法理解如何读入指定的指针。我一整天都在试图寻找这方面的信息,但我真的不知道我的出发点。。。谢谢你提供的指导。

    int read_header (FILE *file, elf_hdr_t *hdr)    
    {
        int read;
        read = fread(hdr, 1, sizeof(hdr), file);
        fclose(file);
    }
    

    2 回复  |  直到 7 年前
        1
  •  1
  •   Chris Dodd    7 年前

    hdr 是指针, sizeof(hdr) sizeof(*hdr) sizeof(elf_hdr_t) 要获取指针指向的elf头结构的大小。。。

        2
  •  1
  •   user3629249    7 年前

    fread()

    这两个参数: 1, sizeof(hdr), 你说要读书 sizeof(hdr)