首页
社区
课程
招聘
[原创]深入理解C语言三-数组的运算
2021-7-25 15:52 4318

[原创]深入理解C语言三-数组的运算

2021-7-25 15:52
4318

数组的特点

数组指的是一组相同类型的数据连续存储在一段内存中,数组中元素类型必须一致,数组名表示数组第0个元素的地址常量。

下标运算规则

1、计算数组第n个元素的地址并访问
2、计算公式:(type)array + sizeof(type)*n
3、必须有两个操作数,一个是类型的地址array,一个是整型数据n

数组的地址

1
2
3
4
5
6
7
8
9
int a1[3];
int a2[2][3];
/*
a1,&a1,a2,&a2都是数组的首地址,值相同,类型不同
a1:int*,指针,指向的数据类型占4个字节
&a1:int* a[3],数组指针,指向的数据类型占4*3个字节
a2:int* a[3],数组指针,指向的数据类型占4*3个字节
&a2:int* a[2][3],二维数组指针,指向的数据类型占4*2*3个字节
*/

数组的运算

1
2
3
4
5
6
7
8
int a1[3];
int a2[2][3];
/*
a1+1:首地址向后移动一个元素的大小
&a1+1:首地址向后移动整个数组的大小
a2+1:首地址向后移动二维数组中一行的大小
&a2+1:首地址向后移动整个二维数组的大小
*/

github:https://github.com/0I00II000I00I0I0

bilibili:https://space.bilibili.com/284022506


[培训]《安卓高级研修班(网课)》月薪三万计划,掌握调试、分析还原ollvm、vmp的方法,定制art虚拟机自动化脱壳的方法

收藏
点赞1
打赏
分享
最新回复 (0)
游客
登录 | 注册 方可回帖
返回