我面临一个非常典型的问题。我有一个函数(create_instance),它返回 void * 。在 create_instance 中,我为结构执行 malloc,为结构成员设置默认值,并返回分配的内存。
在 create_instance 中,malloc 内存为 0x7ffffff000080。在调用函数中,函数的返回值显示为0xffffffffff000080。
接下来,当我尝试访问任何明显的结构成员时,程序就会崩溃。
我的问题是为什么函数返回时值会改变。
我正在使用 Ubutu 12.04 LTS、codeblocks 10.05 环境进行开发。
我是否需要提供任何编译器/链接器选项。我尝试使用选项 -m64,但没有运气。
如果有人知道这件事,请回复。
Kamal Net Cloud Systems 班加罗尔