指针与数组关系详解一维数组元素指针与二维数组操作
指针和数组的关系,一直是 C 语言里让人绕不清的点。指向一维数组元素的指针这个内容就讲得挺清楚的,尤其是 int a[5] = {1, 2, 3, 4, 5}
这种基本用法,配合 p=a
和 p=&a[0]
的区别讲,比较直观。
数组名是指针常量,不能改;而指针变量 p
是可以挪的。就像是一个写死的门牌号和一张可以随便贴的便签。通过 *(p + n)
的方式访问数组元素,也蛮常见的,在多维数组场景里也经常这么用。
建议你也看看几个相关的扩展,比如《指针操作二维数组》和《C 语言中的二维数组指针》,讲二维数组怎么传参、怎么取值,挺实用的。
如果你还分不清二维数组是 int a[3][4]
还是 int (*p)[4]
,那这些文章可以帮你理清楚概念。嗯,工作中写库函数或者数据结构的时候经常能碰上。
另外,如果你从 C++角度切入,也可以看看《C++ 指针变量实参与数组名形参》,对于模板函数里怎么传数组,也有。
,这篇内容作为数组指针的入门复习还不错,细节清楚,语法点覆盖全,配合动手练一练更容易理解。
569KB
文件大小:
评论区