【发布时间】:2018-08-16 02:40:07
【问题描述】:
有没有办法检查指针之前是否空闲?
例如,如果我运行这段代码:
int* p = (int*)malloc(1000);
free(p);
p = (int*)realloc(p, 2000);
我得到错误:
*** Error in `./main': realloc(): invalid old size: 0x00000000012ab010 ***
...
我希望有机会在致电realloc 之前检查p 以避免此类错误。
【问题讨论】:
-
malloc或realloc(或calloc)的返回不需要强制转换,没有必要。见:Do I cast the result of malloc?
标签: c