【C 语言】数组 ( 多维数组操作模型 | 取某个数组元素地址 | 取某个数组元素值 )
生活随笔
收集整理的這篇文章主要介紹了
【C 语言】数组 ( 多维数组操作模型 | 取某个数组元素地址 | 取某个数组元素值 )
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
文章目錄
- 一、多維數組操作模型
- 1、取出某個數組元素地址
- 2、取出某個數組元素值
- 總結
一、多維數組操作模型
以
// 聲明一個多維數組int array[2][3];二維數組為例 ;
1、取出某個數組元素地址
第 000 行 , 第 111 列 元素地址 :
- array[0] + 1 : array 代表 二維數組首元素地址 , array[0] 是數組首元素值 , 該值是 一維數組 , 數組名是數組首元素地址 , 數組名 + 1 就是第 111 個元素的地址 ;
- *array + 1 : array 是 二維數組首元素地址 , *array 是二維數組第 000 個元素的值 , 該值是 一維數組 , *array 一維數組名是數組首元素地址 , *array + 1 步長是一維數組元素大小 , 指向第 111 個元素地址 ;
- &a[0][1] : a[0][1] 是 第 000 行 , 第 111 列 元素變量 , 取地址 , 就是取該變量的地址 , 也就是 第 000 行 , 第 111 列元素的地址 ;
第 iii 行 , 第 jjj 列 元素地址 :
- array[i] + j : array 代表 二維數組首元素地址 , array[i] 是二維數組第 iii 元素值 , 該值是 一維數組 , 數組名是數組首元素地址 , 數組名 + j 就是第 jjj 個元素的地址 ;
- *(array + i) + j : array + i 是 二維數組 第 iii 個元素地址 , *(array + i) 是二維數組第 iii 個元素的值 , 該值是 一維數組 , *(array + i) 一維數組名是數組首元素地址 , *array + j 步長是一維數組元素大小 , 指向第 jjj 個元素地址 ;
- &a[i][j] : a[i][j] 是 第 iii 行 , 第 jjj 列 元素變量 , 取地址 , 就是取該變量的地址 , 也就是 第 iii 行 , 第 jjj 列元素的地址 ;
2、取出某個數組元素值
取出某個元素值 , 就是在上面的 " 第 iii 行 , 第 jjj 列 元素地址 " 基礎上 , 加上 * 取該地址對應的值 ;
第 iii 行 , 第 jjj 列 元素值 :
- *(array[i] + j)
- *(*(array + i) + j) ;
- a[i][j] ;
總結
上述不同操作的由來 , 就是因為 , 數組 既可以使用 [] 下標的方式訪問 , 又可以使用 指針 * 符號訪問 ;
二維數組中 , 還可以使用 [] 符號訪問一維數組 , 之后再使用 * 指針訪問一維數組中的元素 ;
總結
以上是生活随笔為你收集整理的【C 语言】数组 ( 多维数组操作模型 | 取某个数组元素地址 | 取某个数组元素值 )的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【C 语言】数组 ( 多维数组本质 |
- 下一篇: 【C 语言】数组 ( 数组取值操作 |