c语言不理解,遇见一个小程序如下,那个if(!p)是啥意思,是不是说p不能为零?

#include<stdio.h>
#include<stdlib.h>
void main()
{
int *p,t;
p=(int*)malloc(40*sizeof(int));
if(!p)
{
printf("\t内存已用完!\t");
exit(0);
}
for(t=0;t<40;++t)
*(p+t)=t;
for(t=0;t<40;++t)
printf("\t%d",*(p+t));
free(p);
}

if(!p)就是if(p!=0)的意思 或者说是p为真
温馨提示:答案为网友推荐,仅供参考
相似回答