美文网首页嵌牛IT观察
二维数组与指针的一些问题

二维数组与指针的一些问题

作者: __来日方长__ | 来源:发表于2019-11-04 17:03 被阅读0次

学号:19021211263

#include<stdio.h>

int main()
{
    int A[2][3] = {
                        {1,2,3},
                        {4,5,6}
                    };
    printf("=========================\n");
    printf("A[0][1]:%d\n",A[0][1]);
    printf("*(*(A+0)+1):%d\n",*(*(A+0)+1));
    printf("=========================\n");
    printf("&A[1][0]:%d\n",&A[1][0]);
    printf("*(A+1):%d\n",*(A+1));
    printf("=========================\n");
    printf("**(A+1):%d\n",**(A+1));
    printf("**((int (*)[1])A+1):%d\n",**((int (*)[1])A+1));
    return 0;
}

结果:

=========================
A[0][1]:2
*(*(A+0)+1):2
=========================
&A[1][0]:6487612
*(A+1):6487612
=========================
**(A+1):4
**((int (*)[1])A+1):2

分析:

  1. A[0][1]:常规的二维数组索引
  2. *(*(A+0)+1)):利用双重指针来对二维数组进行索引,这里的A应该是一个int ()[3]数组指针类型的变量,*(A+0)就是一个*int ***类型的变量,所以这里和A[0][1]的结果是一样的。
  3. &A[1][0]:第二行第一列数据的地址
  4. *(A+1):同第二点,这里A是一个int ()[3]数组指针类型的变量,故A+1指向第二,且A+1仍是一个int ()[3]**数组指针类型的变量,取地址后就是第二行行首的地址
  5. **(A+1):同理,A是一个int ()[3]数组指针类型的变量,A+1指向第二*,两次取地址后就是元素A[1][0]
  6. **((int (*)[1])A+1)):这里利用强制类型转化将A的类型由int ()[3]数组指针类型转化为int ()[1],故A+1指向第二,且A+1仍是一个int ()[1]*数组指针类型的变量,两次取地址后就是元素A[0][1]

更多有趣内容欢迎访问我的个人博客

相关文章

  • C++ 进阶篇

    指针数组数组的元素是指针类型Point *pa[2];指针数组与二维数组的差别指针数组的元素在内存中不一定连续,二...

  • 二维数组和指针

    二维数组和指针 ⑴用指针表示二维数组元素。 要用指针处理二维数组,首先要解决从存储的角度对二维数组的认识问题。 一...

  • 笔记八

    二维数组指针:一定要知道指针的指向!!即指针指向哪里。指针的运算:注意移动字节数问题。指针与数组的关系:指针数组:...

  • 数组指针和指针数组

    1.数组指针(又称行指针) 二维数组赋给一指针时: 2.指针数组 二维数组赋给一指针数组: 小结:数组指针只是个指...

  • 二维数组与指针、指针数组、数组指针的用法

    二维数组和指针⑴ 用指针表示二维数组元素。要用指针处理二维数组,首先要解决从存储的角度对二维数组的认识问题。我们知...

  • 12.16学习总结

    二维数组指针:一定要知道指针的指向指针的运算:注意移动字节数的问题指针与数组的关系指针数组:int pb[4];数...

  • 指针数组-访问二维数组

    用指针数组访问二维数组

  • 2018-05-24

    5月24日 上课的第十八天。主要讲了指针与二维数组,要注意二维数组名字与地址的关系,注意指针符号*与取地址符&的应...

  • C语言的指针与数组(进阶篇之二)

    二、二维数组与指针 (1).二维数组元素在内存中的存放方式C语言中,二维数组元素值在内存中是线性的。跟一维数组相差...

  • 2019-08-28(二级指针和二维数组)

    一个二级指针**p和二维数组arr 指针数组 code

网友评论

    本文标题:二维数组与指针的一些问题

    本文链接:https://www.haomeiwen.com/subject/vivdbctx.html