gpt4 book ai didi

c:读取/写入哈希表到文件

转载 作者:行者123 更新时间:2023-11-30 17:57:47 24 4
gpt4 key购买 nike

我正在尝试使用 fwrite 将哈希表写入 C 文件并使用 fread 读取它。我有这个结构:

struct table {
struct person *person_table[SIZE];
};
static struct table hashtable;

当我使用 fread 时,我有

    fread(&hashtable, sizeof(struct table), 1, file)

和fwrite:

    fwrite(&hashtable, sizeof(struct table), 1, file)

但是,我在读取和写入后无法正确访问数据。有什么问题吗?

最佳答案

您没有将哈希表的数据写入文件。相反,您将指针中包含的地址写入到 struct person 元素,这些地址在反序列化后无效。

您还需要将数据写入文件(伪代码,假设struct person 不包含进一步的指针):

for (person_pointer in person_table) {
fwrite(person_pointer, sizeof(person), 1, file);
}

关于c:读取/写入哈希表到文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12628969/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com