C语言(用指针访问数组元素:)
任务代码:
(如下)
执行情况:
文章图片
知识总结:
知识点1:用指针访问数组元素:
单独输出数组的名字就是相当于输出数组首元素的地址!= 数组的名字代表数组首元素的地址
文章图片
int a[10]={1,2,3,,4,5,6,7,8,9,10};
int *p;
//先声明指针变量
p=&a[0]//然后将指针赋予地址
这种写法等同于:
int a[10]={1,2,3,,4,5,6,7,8,9,10};
int *p;
//先声明指针变量
p=a;
//然后将指针赋予首元素地址
更简便:
int a[10]={1,2,3,,4,5,6,7,8,9,10};
int *p=a;
//一步代替两步,声明并赋值地址
文章图片
*(p+i)代表的是p后面的第i个单元(每个单元就是上图的小方格)!
下面[ ]是一个运算符 ,用于取数组里的值
文章图片
a代表数组的首地址,i代表后地址后的第i个单元,d代表每个单元所占用的字节数(就是每个小方框所占用的字节数)!
引用数组元素的方法:
文章图片
范例:
建议使用最下面的那种方法是标准的使用指针访问数组a[10]
【C语言(用指针访问数组元素:)】代表的是定义指针变量*p,将数组a的首元素地址赋值给p,此事的p代表的是a的首元素地址,然后p<(a+10)代表循环a之后的10个元素,输出值为*p代表指向a[]中值;
#include
int main()
{
int a[10]={1,2,3,4,5,6,7,8,9,10};
int *p;
for(p=a;
p<(a+10);
p++)//p++代表指向a[]的下一个单元,也就是顺着之后的地址依次读取
{
printf("%d ",*p);
}
return 0;
}
或者:
#include
int main()
{
int a[10]={1,2,3,4,5,6,7,8,9,10};
int *p;
p=a;
//首元素地址赋值
while(p
文章图片
文章图片
心得体会:
推荐阅读
- Docker应用:容器间通信与Mariadb数据库主从复制
- JS中的各种宽高度定义及其应用
- 由浅入深理解AOP
- 【译】20个更有效地使用谷歌搜索的技巧
- 涉毒患者(新诗)
- 参保人员因患病来不及到指定的医疗机构就医,能否报销医疗费用()
- mybatisplus如何在xml的连表查询中使用queryWrapper
- MybatisPlus|MybatisPlus LambdaQueryWrapper使用int默认值的坑及解决
- MybatisPlus使用queryWrapper如何实现复杂查询
- 标签、语法规范、内联框架、超链接、CSS的编写位置、CSS语法、开发工具、块和内联、常用选择器、后代元素选择器、伪类、伪元素。