C语言写好了一个文件保存到了硬盘中,下次打开这个文件时,怎样才能返回这个文件的首地址以便下一步的操作

返回地址之后,又怎样才能转换为非文件类型的指针?我要的是结构体指针,而非文件的指针!

你是否将某个结构体整个写到文件中,希望再读回来时将内容恢复到该结构体中?
如果是这样的话,首先将fp移动到你保存该结构体的地方,然后用read(fp, (char*)&your_struct_obj, sizeof(your_struct));或者类似的函数就可以了。

这种利用文件保存结构,再恢复结构的方法对结构体中的指针存在问题,恢复后的指针有可能是野指针,指针是进程空间的绝对地址,可改用相对某个特定变量的偏移量等相对地址来解决。

用这种方法做对象序列化,必须write方法和read方法配对使用。

不知道是否答非所问~
温馨提示:内容为网友见解,仅供参考
无其他回答
相似回答