遇到NULL的一点问题,引发的一点思考
#include<stdio.h>
void main()
{
printf("%d\n", NULL); //这样看起来,整形变量可以等于NULL,指针可以等于NULL,字符可以等于NULL
printf("%p\n", NULL); //但是有些情况是,比如数组:可以是指针不指向NULL,但是内容是空
printf("%c\n", NULL);
printf("%s\n", NULL);
printf("*****************\n");
int i = NULL;
char a = NULL;
int *p = NULL;
printf("%d\n", i);
printf("%p\n", p);
printf("%c\n", a);
printf("**********************\n");
char k[] = { NULL };
char l[] = { "\0" }; //在打印方面,NULL在去数值时是0,取字符时为空格
printf("%s", k); //取字符串是空,就是什么都不打印。取地址为空时,打印(null)
printf("%s", l);
char j[10] = "abc";
printf("%s",j);
}
NULL理解
最新推荐文章于 2020-07-15 23:30:35 发布