我面临一个非常典型的问题。 我有一个函数(create_instance),返回void *。 在create_instance中,我为一个结构做一个malloc,将默认值设置为结构的成员,并返回malloced内存。
在create_instance中,malloc内存为0x7fffff000080。 在调用函数中,函数的返回值显示为0xffffffffff000080。
接下来,当我尝试访问任何显而易见的结构成员时程序崩溃。
我的问题是当函数返回时值被更改的原因。
我正在使用Ubutu 12.04 LTS,codeblocks 10.05环境进行开发。
我是否需要提供任何编译器/链接器选项。我尝试使用选项-m64,但没有运气。
如果有人知道这一点,请回复。
哈拉 网络云系统 班加罗尔