7.22.3.4 malloc 函数 malloc 函数为大小由大小指定且值不确定的对象分配空间。
原型:void *malloc(size_t size);
我尝试将负值作为参数传递:malloc(negative)
返回NULL
。
是因为 [size_t] 负数转换为无符号 [某个大值] 并且无法分配所需的空间还是函数检查参数并返回NULL
?
如果它被转换为大正数,那么在调用malloc(INT_MIN+2)
它时仍然返回NULL
,但malloc(0)
分配给指针并*p = somevalue
工作。那这个呢?
是否定义了实现?
阅读此链接:malloc(0)