我有以下结构:
typedef struct transgressor
{
int priority;
Record record;
struct transgressor *next;
int position;
int hasNext;
}Transgressor;
我需要把它写到文件中。问题在于struct transgressor *next
部分,因为它是指针。我如何取消引用它,或组织结构不同,所以我可以写它并在从文件中读取后?
答案 0 :(得分:0)
将指针保存到文件没有意义。由于结构中已经有position
变量,因此可以使用它来帮助您在内存中重新创建列表,而不是从文件加载列表。
答案 1 :(得分:0)
在将任何内容保存到文件之前,应指定(理想情况下为书面文档)数据在字节级别存储在文件中的格式。如果有一个方便的话,请使用现有的文件格式,否则你必须设计并指定自己的格式。
在字节级别确定数据格式后,编写代码以将结构转换为该格式或从该格式转换。磁盘的格式是什么。从磁盘中读取该格式。
没有捷径不会导致痛苦和痛苦。