char* lw;
if((lw=(char *)calloc(2, sizeof(char))==0))
printf("Failed to allocate.\n");
else
printf("allocated %p\n", lw);我已经阅读了calloc的手册,需要一个快速而简短的答案,为什么它输出为NIL?它转到else,所以lw不可能是NIL,然后输出"allocated (nil)"?上帝之手?;)
发布于 2011-09-15 21:23:00
因为您将赋值给lw calloc(...) == 0,即false。你想要另一种方式吗
用)==NULL)替换==0))。
https://stackoverflow.com/questions/7431537
复制相似问题