若有定义:int aa[8];,则以下表达式中不能代表数组元素aa[1]的地址的是
A.&aa[0]+1
B.&aa[1]
C.&aa[0]++
D.aa+1
人气:218 ℃ 时间:2019-11-06 03:34:45
解答
选C
aa是数组名的同时也是这个数组首元素的首地址,也就是aa=&aa[0]
找aa[1]的地址就是首地址偏移一个整形位,所以A D 对
B就是对元素aa[1]取地址
所以ABD对
C中&小于后置++的优先级所以&aa[0]++等价于
&(aa[0]++)所以先对aa[0]中的元素值加1后,在对aa[0]取址,结果还是aa[0]的地址
故C错
推荐
- 19、若有定义int a[3][4];则不能正确表示a数组元素地址的表达式是 (
- 若有定义:int w[3][5];这一下不能正确表示该数组元素的表达式是()
- 若有以下定义和语句:int a[10]={1,2,3,4,5,6,7,8,9,10},p=a; 则不能表示a数组元素的表达式是( ) A) *p B)
- C语言若有定义:int w[3][5]; 则以下不能真确表示该数组元素的表达式是:
- 下列数组定义错误的是 A.int x=5,a[x]; B.int aa[1]; C.int aa[2][3]; D.int a['a'];
- when you say GIVE to him,he does nothing,but when you say TAKE,he takes.
- 我国长度最长,年径流量最大的河流是哪个湖?
- 如图所示,质量为m的木块,恰好能沿斜面匀速下滑,已知木块和斜面的动摩擦因数为μ,要将木块匀速推上斜面,必须加多大的水平力?
猜你喜欢