C/C++数组访问方式:*a,*a[0],*(*(a+i)+j)详解 |
您所在的位置:网站首页 › 数组元素地址的表达式 › C/C++数组访问方式:*a,*a[0],*(*(a+i)+j)详解 |
文章目录
一、数组的访问方式1、下标访问2、指针访问1)数组名的含义2)数组地址和元素地址3)通过指针访问数组元素i. 二维数组中的```arr[i]```ii. 二维数组中的```arr[i][j]```
总结
一、数组的访问方式
1、下标访问
通过数组名和下标访问,这里不赘述。 2、指针访问 int arr[4][5] = { {1, 2, 3, 4, 5}, {6, 7, 8, 9, 10}, {11,12,13,14,15}, {16,17,18,19,20} };首先,二维数组的本质是数组的数组,即二维数组的每个元素都是一个一维数组。 例如一个二维数组 int arr[4][5],那么 arr就是一个包含了 4 个一维数组的数组,每个一维数组都有 5 个元素。 1)数组名的含义需要区分: arr和arr[0]在 C/C++中,数组名可以表示数组的首地址,也就是数组的第一个元素的地址。 例如,arr是二维数组的名字,arr就表示二维数组arr的首地址,也就是一维数组 arr[0]的地址。 同样,arr[0]是一维数组的名字,arr[0]就表示一维数组 arr[0]的首地址,也就是元素 arr[0][0]的地址。即 arr等价于&arr[0]arr[0]等价于&arr[0][0]并且,对数组名取地址,就等于数组中第一个元素的值(或对象),即 *arr等价于arr[0]*arr[0]等价于arr[0][0]简单测试一下: #include #include // 打印数据类型 using namespace std; int main() { int arr[4][5] = { {1, 2, 3, 4, 5}, {6, 7, 8, 9, 10}, {11,12,13,14,15}, {16,17,18,19,20} }; cout |
今日新闻 |
点击排行 |
|
推荐新闻 |
图片新闻 |
|
专题文章 |
CopyRight 2018-2019 实验室设备网 版权所有 win10的实时保护怎么永久关闭 |