二级C语言一道题目,麻烦高手们来解答一下哈*^_^*
教材上说a[i][j]的地址可以用以下几种表达式求得:(1)&a[i][j](2)a[i]+j(3)*(a+i)+j我想问一下书上说a与a[0]的值、a+1与a[1]的值...
教材上说a[i][j]的地址可以用以下几种表达式求得:
(1)&a[i][j]
(2)a[i]+j
(3)*(a+i)+j
我想问一下书上说a与a[0]的值、a+1与a[1]的值相同,也就是说a+i和a[i]的值相同
那么表达式(2)和表达式(3)不是不相等嘛?因为a[i]和a+i 相等也就是说 a[i]+j应该和(a+i)+j所表示的意思是一样的,都表示a[i][j]的地址,为什么表达式(3)多了一个“*”号呀? 展开
(1)&a[i][j]
(2)a[i]+j
(3)*(a+i)+j
我想问一下书上说a与a[0]的值、a+1与a[1]的值相同,也就是说a+i和a[i]的值相同
那么表达式(2)和表达式(3)不是不相等嘛?因为a[i]和a+i 相等也就是说 a[i]+j应该和(a+i)+j所表示的意思是一样的,都表示a[i][j]的地址,为什么表达式(3)多了一个“*”号呀? 展开
展开全部
a+i=&a[i]
*(a+i)=a[i]
*(a+i)+j=a[i]+j
*(a+i)=a[i]
*(a+i)+j=a[i]+j
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
"a与a[0]的值、a+1与a[1]的值相同"这句话不对,书上不可能这么说,你肯定看错了。应该是说在二维数组a[i][j]中"a"和"a[0]"都可以表示地址,并且表示的是同一个地址(地址的值相同),但是代表的含义不同,用法也不同。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询