数组变量是特殊的指针:

1、数组变量本身表达地址,所以

        int a[10];    int *p=a;

2、但是数组的单元表达的是变量,需要用&取地址,并且[ ]运算符可以对数组做,也可以对指针做

         p=&a[0];    //将a[0]的地址保存在指针p中

        并且p[0]=a[0]的数据

        若p=&a[4];则将a[4]的数据=p[0],并且p[-1]=a[3]的数据

例  int a[] = {5, 15, 34, 54, 14, 2, 52, 72};
    int *q ;
    q=&a[1];
    printf("%p\n",q);
    printf("%d\n",q[0]);
    printf("%d\n",q[-1]);
   // printf("%p\n",q);
    printf("%p\n",a);

输出结果

数组变量与指针的关系

数组变量与指针的关系

数组变量与指针的关系

相关文章:

  • 2022-12-23
  • 2022-01-17
  • 2022-12-23
  • 2022-12-23
  • 2021-04-15
  • 2021-08-01
  • 2022-12-23
猜你喜欢
  • 2021-07-15
  • 2022-12-23
  • 2021-10-18
  • 2021-04-30
  • 2021-08-18
  • 2022-01-14
  • 2021-08-09
相关资源
相似解决方案