数组的本质

简介: 数组的本质

数据名代表数组首元素的地址;

数组的地址需要用取地址符&才能得到;

数组首元素的地址值与数组的地址值相同

数组首元素的地址与数组的地址是两个不同的概念;

int a[5] = { 0 };
    printf("a = %p\n", a);
    printf("&a = %p\n", &a);
    printf("&a[0] = %p\n", &a[0]);//结果都是一样的

数组名可以看成一个常量指针

 

数组名“指向”的是内存中数组首元素的起始地址

数组名不包含数组的长度信息

在表达式中数组名只能作为右值使用

只有在下列场合下数组名不能看做常量指针:

   1,数组名作为sizeof操作符的参数

   2,数组名作为&运算符的参数

相关文章
|
6月前
|
C++
第五章:C++中的数组与指针关系
第五章:C++中的数组与指针关系
56 1
|
6月前
|
机器学习/深度学习 NoSQL 容器
递归的本质与基本实现形式
递归的本质与基本实现形式
|
6月前
|
存储 索引 Python
什么是数组,什么是对象,并说出他们的区别
什么是数组,什么是对象,并说出他们的区别
44 6
|
6月前
|
JSON JavaScript 前端开发
揭秘类数组对象:形似数组,超越数组!(下)
揭秘类数组对象:形似数组,超越数组!(下)
|
6月前
|
JavaScript 前端开发 索引
揭秘类数组对象:形似数组,超越数组!(上)
揭秘类数组对象:形似数组,超越数组!(上)
|
6月前
|
存储 Java 程序员
Java数组全套深入探究——基础知识阶段3、数组下标操作
Java数组全套深入探究——基础知识阶段3、数组下标操作
73 0
|
6月前
|
算法 Java 程序员
Java数组全套深入探究——基础知识阶段4、数组的遍历
Java数组全套深入探究——基础知识阶段4、数组的遍历
68 0
|
C++ 索引
19 深入理解数组:底层探究
深入理解数组:底层探究
74 0
|
存储 C#
C#视频—浅谈数组与集合的差别
C#视频—浅谈数组与集合的差别
|
搜索推荐 编译器 C++
C++基础:第5~6章:数组\函数
C++基础:第5~6章:数组\函数
52 0