关于指针与二维数组之间的那些事

Posted 么么打123

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于指针与二维数组之间的那些事相关的知识,希望对你有一定的参考价值。

int a[2][3]={{1,2,3},{4,5,6}}

(*p)[3]=a;

若引用数组第二行第二列元素的值,则下列不正确的表达式为

A:*(*(a+1)+1)

B:*(*(p+1)+1)

C:*(*(++a)+1)    //错误

D:*(*(++p)+1)

解析:因为数组名a是一个常量,而p是一个变量,a可以a+1,但不能++a,但p可以

拓展:类型符说明 (*指针变量名)[长度]

int (*p)[4]   *p有4个元素,每个元素都为整型

        p所指的对象是有四个整型元素的数组

*(p+2)+3=a[2]+3=&a[2][3];

*(*(p+2)+3)=*(a[2]+3)=a[2][3];

 

小白自行理解,如有错误,请大佬指出,谢谢

以上是关于关于指针与二维数组之间的那些事的主要内容,如果未能解决你的问题,请参考以下文章

关于c语言二维数组列指针初始化

关于返回二维数组指针问题

指针与一维数组和二维数组以及字符串指针数组的学习笔记

c++指针数组与二维数组的最大区别

C语言中关于二维数据指针的问题?

关于数组以为指针二维指针的应用举例