【发布时间】:2012-11-12 19:49:23
【问题描述】:
假设我有两个代码示例用于创建一个包含 10 个元素的整数数组:
int *pi = (int*)0;
realloc(pi,10);
另一个是正常写的,即:
int *pi;
pi= malloc(10*sizeof(int));
现在,我的问题是:第一种类型的赋值是合法的,但没有使用。为什么,虽然我可能会得到我选择的起始位置?
用常量初始化指针是合法的,但不被使用。为什么?
【问题讨论】:
-
你不应该在 C 中强制转换 malloc 的返回值。