当前位置: 首页 > news >正文

【概念辨析】数组指针指针数组

       

目录

        一、数组指针

        二、指针数组

        三、 数组指针的数组名不是二级指针

         再来说最关键的:数组指针为什么不是二级指针呢?

       代码如下:

        四、指针数组的数组名是二级指针


在复习,在考试,在焦虑。

        又一次学习到了数组指针和指针数组这个头疼的概念,只不过这次的头脑过更加清晰,理解更加深刻。

        一、数组指针

        数组指针是指针,这个指针指向数组。

        二、指针数组

        指针数组是数组,这个数组的每个元素是指针,也就是说:指针数组是保存地址的数组。 

        三、 数组指针的数组名不是二级指针

        先看一组常见的辨析:

上述代码说明了:

数组指针(p)指向了这个数组(arr),并且:数组名的值是数组首元素的地址。

        再看一组区别它们的代码:

上述代码说明了:

1.数组指针 取出来的是整个数组的地址

2.数组名是首元素的地址

3.&数组名是整个数组的地址

尽管它们三个在值上都等于&arr[0][0]。

         再来说最关键的:数组指针为什么不是二级指针呢?

        1.数组指针是指向数组的指针

           二级指针是指向指针的指针

        2.对数组指针进行解引用得到的是数组

           对二级指针进行解引用得到的是指针

       代码如下:

由上述代码可知:

*p  <==> arr

arr是一个数组名,指向数组的首元素,那么*p也是一个指针形式的数组名,与arr完全相等。由此,*p并不是二级指针。

        四、指针数组的数组名是二级指针

        看一段推导关系:

        数组名是指向数组中第一个元素的指针,指针数组是指向数组的,也就是说,指针数组是指向指针的指针,也即二级指针。

        代码证明:

 可能只有这么一条还是不具有足够的证明力度:

使用二维传递参数看看结果:

 

http://www.lryc.cn/news/17097.html

相关文章:

  • python实战应用讲解-【语法基础篇】字典的创建及建模(附示例代码)
  • 华为OD机试真题Python实现【分糖果】真题+解题思路+代码(20222023)
  • 视频技术基础知识
  • Windows应用之——设置定时关机
  • 华为OD机试真题Python实现【 喊七】真题+解题思路+代码(20222023)
  • 国产蓝牙耳机哪个好用?国产好用的蓝牙耳机推荐
  • JAVA虚拟机JVM之内存模型
  • Java线程——常见方法
  • 机器学习:基于逻辑回归对某银行客户违约预测分析
  • MySQL数据库常用命令汇总(全网最全)
  • Bulletproofs++
  • 毕业设计(1)-AFLGO的安装
  • 基于Opencv的缺陷检测任务
  • Android Gradle脚本打包
  • 平滑KDJ指标公式,减少无效金叉死叉
  • 大势前瞻!文旅还是短视频,你弯道超车风口在这了
  • JAVA基础常见面试题
  • 通过一张照片来定位拍摄地点和网站的域名 LA CTF 2023
  • SpringBoot(powernode)(内含教学视频+源代码)
  • TEMU联盟计划用意何在?做推广达人真的能收入满满吗?
  • 【概念辨析】二维数组传参的集中可能性
  • Photon Vectorized Engine 学习记录
  • webRTC学习-基础知识
  • MySQL数据库——JDBC编程
  • 【面向小白】你见过这样讲解队列的吗?(阅此文可学会用纯C手撕一个队列)
  • [element plus] 对话框组件再封装使用 - vue
  • Markdown基本语法简介
  • 分布式服务的接口幂等性如何设计
  • 视频流截取保存到本地路径(打包jar包CMD运行)
  • mysql索引失效的几种情况