问题标题:
【关于指针的两个选择题例7:若有定义inta=5;下面对(1),(2)两个语句的正确解释是().1、int*p=&a;2、*p=a;A)x05语句1和2中的*p含义相同.B)x051和2语句的执行结果都是把变量a的地址赋给指针】
问题描述:
关于指针的两个选择题
例7:若有定义inta=5;下面对(1),(2)两个语句的正确解释是().
1、int*p=&a;2、*p=a;
A)x05语句1和2中的*p含义相同.
B)x051和2语句的执行结果都是把变量a的地址赋给指针变量p
C)x051在对p进行说明的同时进行初始化,使p指向a,2将变量a的值赋给指针变量p.
D)x051在对p进行说明的同时进行初始化,使p指向a,2将变量a的值赋于*p.
例8:若有语句int*point,a=4;和point=&a;下面均代表地址的一组选项是().
A)x05a,point,*&aB)&*a,&a,*point
C)*&point,*point,&aD)&a,&*point,point
姜爱蓉回答:
例7:D
例8:D
葛志荣回答:
&*point这样的写法是正确的吗?
姜爱蓉回答:
正确,point为指针,*point是对指针进行解引用,获得了当前指针所指向地址的值。这里就相当于a*point==a再前面再加个取值符&*point相当于对a取值:&*point==&a;就等于point.所以&*point==point;
葛志荣回答:
那例7中的C和D的差别在哪里啊?麻烦了~
姜爱蓉回答:
注意注意后半句话:C)2将变量a的值赋给指针变量p。//这里指针变量p只能指向一个地址,而不能获取这个地址上的值D)2将变量a的值赋于*p。//对指针进行解引用*p是可以获取当前地址上的值的,值和值之间是可以赋值的
点击显示
数学推荐
热门数学推荐