返回地址之后,又怎样才能转换为非文件类型的指针?我要的是结构体指针,而非文件的指针!
你是否将某个结构体整个写到文件中,希望再读回来时将内容恢复到该结构体中?
如果是这样的话,首先将fp移动到你保存该结构体的地方,然后用read(fp, (char*)&your_struct_obj, sizeof(your_struct));或者类似的函数就可以了。
这种利用文件保存结构,再恢复结构的方法对结构体中的指针存在问题,恢复后的指针有可能是野指针,指针是进程空间的绝对地址,可改用相对某个特定变量的偏移量等相对地址来解决。
用这种方法做对象序列化,必须write方法和read方法配对使用。
不知道是否答非所问~
如果是这样的话,首先将fp移动到你保存该结构体的地方,然后用read(fp, (char*)&your_struct_obj, sizeof(your_struct));或者类似的函数就可以了。
这种利用文件保存结构,再恢复结构的方法对结构体中的指针存在问题,恢复后的指针有可能是野指针,指针是进程空间的绝对地址,可改用相对某个特定变量的偏移量等相对地址来解决。
用这种方法做对象序列化,必须write方法和read方法配对使用。
不知道是否答非所问~
温馨提示:答案为网友推荐,仅供参考