两道关于null的c语言题目:1 设有定义:int x=0,*p;立刻执行以下语句,正确的是:a.p=x; b.*p=x;c.p=null; d.*p=null2设变量p是指针变量,语句p=null;是给指针变量赋null值,它等价于a.p=" "; b.p=‘0’;

来源:学生作业帮助网 编辑:作业帮 时间:2024/11/08 18:06:58

两道关于null的c语言题目:1 设有定义:int x=0,*p;立刻执行以下语句,正确的是:a.p=x; b.*p=x;c.p=null; d.*p=null2设变量p是指针变量,语句p=null;是给指针变量赋null值,它等价于a.p=" "; b.p=‘0’;
两道关于null的c语言题目:1 设有定义:int x=0,*p;立刻执行以下语句,正确的是:a.p=x; b.*p=x;
c.p=null; d.*p=null
2
设变量p是指针变量,语句p=null;是给指针变量赋null值,它等价于
a.p=" "; b.p=‘0’;c.p=0; d.p='';
主要是第一题的c选项不太明白

两道关于null的c语言题目:1 设有定义:int x=0,*p;立刻执行以下语句,正确的是:a.p=x; b.*p=x;c.p=null; d.*p=null2设变量p是指针变量,语句p=null;是给指针变量赋null值,它等价于a.p=" "; b.p=‘0’;
第一题
a、p是一个地址,你可以说p=&x,但不能说a=x,a不对
b、*p是指向一个变量地址的指针,而x是int型,b不对
c、c是对的,这是指针的初始化.
d、int *p;*p=null;该句代码的意思是p指向的内存赋值为NULL,这不是合法的内存,d不对.
第二题
在c语言中null与0相对应,因此,p=null,p=0,p='\0'都是正确的
而字符'0’或者空格符的ASCII都不是0