下面的程序哪部分出现错误,为什么?

 我来答
热点那些事儿
高粉答主

2022-09-13 · 关注我不会让你失望
知道大有可为答主
回答量:8668
采纳率:100%
帮助的人:189万
展开全部

选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错。

扩展资料

C语言的运算符主要用于构成表达式,同一个符号在不同的表达式中,其作用并不一致。下面按计算的优先顺序,分别说明不同作用的表达式。需要特别指出,在C语言标准中,并没有结合性的说法。

相同优先级运算符,从左至右依次运算。注意后缀运算优先级高于前缀。因此++i++应解释为++(i++)。

而与或非的运算优先级都不一样,因此a && b || b && c解释为(a && b) || (b && c)

合理使用优先级可以极大简化表达式。

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式