因此,我正在做一个项目,但未能将所有内容放在一起进行这项工作。我们需要读入二进制文件的头并将它们存储在指定的指针处。
我正在使用的功能:
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);
}
我想知道我是否在做我在这里尝试的事情,基本上是想一次读取一个字节到指定的指针。
最佳答案
由于hdr
是指针,因此sizeof(hdr)
只是指针的大小。您希望sizeof(*hdr)
或sizeof(elf_hdr_t)
获得指针指向的elf标头结构的大小...
关于c - 如何读取二进制文件并将数据存储在C中的指针处,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/52462321/