A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 每天进步一点点 中级黑马   /  2014-7-4 09:03  /  876 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

  1. #include<stdio.h>
  2. void main()
  3. {
  4.     int  a[20],i;
  5.     for(i=0;i<20;i++)   
  6.    scanf("%d",(a++))
  7. }
复制代码
请问如果定义了数组int a[20];可以用a++表示每个元素的地址吗

评分

参与人数 1技术分 +1 收起 理由
傘が咲く + 1

查看全部评分

2 个回复

倒序浏览
当然可以啦。下标引用就是这个原理啊。a[i]就相当于*(a+i)
回复 使用道具 举报

  1. #include<stdio.h>
  2. void main()
  3. {
  4.     int  a[20];
  5.     for(int i=0;i<20;i++) {
  6.         printf("%d",(a++));
  7.     }
  8. }
复制代码

数组名可以用来表示数组的首地址,即a == &a[0],以此类推,a+1 == &a[1]......

评分

参与人数 1技术分 +1 收起 理由
傘が咲く + 1

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马