用C++实现链表保存到文本文档

struct str
链表以文件形式保存的时候是不是只能保存DATA部分的数据?
也就是说从文件读取的时候*next部分的内容需要重新建立链表来确定。
另外,如果一个结构体长度不固定(比如里面有char *string),保存为文件的时候该如何分配空间?
又该如何读取?是不是不能用fwrite(),fread()了
不胜感激!

第一个问题,只能说是的。内存的地址保存了也没用。每次不一样。
第二个问题,你的问题有问题。char *string是一个指针,长度固定为4字节(32位机)。
不过你保存这个指针也是没有意义的。
一种方法是,在结构体里面写char string[SIZE],把大小固定下来。这是常用方法,推荐使用。
如 果你非要动态创建这个string的话,你将不能直接保存这个结构了。可以每次先把结构中其他成员写入文件,再把这个string写入文件(要包含最后的 '/0'),读的时候,要先把结构中的其他成员一条一条读入。然后申请一块比较大的内存,一个字节一个字节的读文件,直到该字节的值为0,表示这一条记录 读完了。
超级繁琐!现在硬盘内存这么大,极度不推荐!!!
 

你可能感兴趣的:(15-C/C++编程,string,文档)