【发布时间】:2012-06-09 12:10:22
【问题描述】:
所以,我正在尝试在堆中编写一个返回指向 ADT 的指针的函数。
问题是我无法在内存分配后对其进行操作。这是一个简化的代码
typedef struct _entity {
int value;
} *Entity;
Entity *new_entity() {
Entity *ptr = (Entity*)malloc(sizeof(struct _entity));
assert( ptr );
(*ptr)->value = 5; // program crashes after this line
return ptr;
}
错误是:
test.exe 中 0x013e1665 处未处理的异常:0xC0000005:访问 违规写入位置0xcdcdce21。
【问题讨论】:
标签: c abstract-data-type