【发布时间】:2022-01-14 12:23:48
【问题描述】:
我有以下结构和数组
#define PAGE_SIZE 256
typedef struct frame_attribute {
signed char content[PAGE_SIZE];
} frame;
frame pmemory[64];
我正在尝试通过以下方式使用 fread() 将 256 个字节读入内容数组,
fread(pmemory[id].content, sizeof(pmemory[id]), PAGE_SIZE, filePointer);
它给了我一个分段错误。我不确定是什么问题
【问题讨论】:
-
您只能将
PAGE_SIZE字节读入该成员,而不是(有效地)sizeof(pmemory[id]) * PAGE_SIZE字节。另外id必须在0...63范围内。 -
同时检查
fopen是否真的成功了。
标签: c struct segmentation-fault fread