c语言 数组指针

c语言 数组指针,第1张

文章目录
  • 前言
  • 一、数组指针的概述:
  • 二、数组指针遍历数组:
  • 三、数组指针遍历数组元素的应用:
  • 总结


前言

之前我们讲了指针数组,今天讲一下数组指针。

一、数组指针的概述:

数组指针就是数组的指针,就是指向数组的指针。

  1. int a [5] = {1,2,3,4,5}; / / 定义一个数组
  2. int *p = &a[0]; / / 定义一个指针指向数组的首地址,由于 数组的首地址就是数组名,所以&a[0]==a; 则可写为 int * p = a;
  3. 则此时的指针 p 就是数组指针
二、数组指针遍历数组:

因为 指针 p 指向 数组的首地址,则可以通过地址遍历数组的元素。

  1. 前面我们讲过指针的偏移,又因为 p 指向数组可得到:
    p+0 == &a[0];
    p+1 == &a[1];
    p+2 == &a[2];
    p+3 == &a[3];
    p+4 == &a[4];
  2. a[0] == *&a[0] == *(p+0) == *p;
    a[1] == *&a[1] == *(p+1) == *p;
    a[2] == *&a[2] == *(p+2) == *p;
    a[3] == *&a[3] == *(p+3) == *p;
    a[4] == *&a[4] == *(p+4) == *p;
三、数组指针遍历数组元素的应用:


注意:
1.* (p+i)一定要加小括号,因为* 的优先级低于 + 。

总结

指针数组和数组指针一定要好好理解,不要搞混淆。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/langs/872705.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-13
下一篇2022-05-13

发表评论

登录后才能评论

评论列表(0条)

    保存