日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

【C 语言】数组 ( 多维数组本质 | n 维数组名称本质 是 n-1 级数组指针 )

發布時間:2025/6/17 编程问答 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【C 语言】数组 ( 多维数组本质 | n 维数组名称本质 是 n-1 级数组指针 ) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

文章目錄

  • 總結
  • 一、多維數組本質
  • 二、完整代碼示例

總結

n 維數組名稱本質 是 n-1 級數組指針





一、多維數組本質



給定多維數組 :

// 聲明一個多維數組int array[2][3];

打印二維數組 , 打印 array 和 array + 1 的值 , array 是數組首元素地址 ;

打印結果是 array = 6422188, array + 1 = 6422200 , 往后跳了 12 字節 ; 該二維數組 2 行 3 列 , 每行有 3 個 int 值 , 12 字節 , 這是跳轉了 一列 的內存大小 ;

上述 二維數組 名 , 相當于 一級數組指針 ;

// 打印 array 和 array + 1 的值 , array 是數組首元素地址// array = 6422188, array + 1 = 6422200 , 往后跳了 12 字節// 該二維數組 2 行 3 列 , 每行有 3 個 int 值 , 12 字節// 這是跳轉了 一列 的內存大小// 多維數組名 相當于一個 數組指針// 二維數組名 相當于一個 一維數組指針// 三維數組名 相當于一個 二維數組指針printf("array = %d, array + 1 = %d\n", array, array + 1);

打印 &array 和 &array + 1 的值 , &array 是數組首地址 ;

打印結果是 &array = 6422188, &array + 1 = 6422212 , 往后跳了 24 字節 ; 二維數組總大小是 24 字節 , 這是跳轉了一個二維數組的大小 ;

// 打印 &array 和 &array + 1 的值 , &array 是數組首地址// &array = 6422188, &array + 1 = 6422212 , 往后跳了 24 字節// 二維數組總大小是 24 字節 , 這是跳轉了一個二維數組的大小 ;printf("&array = %d, &array + 1 = %d\n", &array, &array + 1);



二、完整代碼示例



完整代碼示例 :

#include <stdio.h> #include <stdlib.h> #include <string.h>/*** @brief main 多維數組名本質* @return*/ int main() {// 聲明一個多維數組int array[2][3];// 循環控制變量int i = 0, j = 0;// 用于給 多維數組 賦值時的累加索引值int index = 1;// 給多維數組賦值for(i = 0; i < 2; i++){for(j = 0; j < 3; j++){array[i][j] = index++;}}// 打印 多維數組 元素 值for(i = 0; i < 2; i++){for(j = 0; j < 3; j++){printf("%d\n", array[i][j]);}}// 打印 array 和 array + 1 的值 , array 是數組首元素地址// array = 6422188, array + 1 = 6422200 , 往后跳了 12 字節// 該二維數組 2 行 3 列 , 每行有 3 個 int 值 , 12 字節// 這是跳轉了 一列 的內存大小// 多維數組名 相當于一個 數組指針// 二維數組名 相當于一個 一維數組指針// 三維數組名 相當于一個 二維數組指針printf("array = %d, array + 1 = %d\n", array, array + 1);// 打印 &array 和 &array + 1 的值 , &array 是數組首地址// &array = 6422188, &array + 1 = 6422212 , 往后跳了 24 字節// 二維數組總大小是 24 字節 , 這是跳轉了一個二維數組的大小 ;printf("&array = %d, &array + 1 = %d\n", &array, &array + 1);// 定義 指向數組 的指針變量int (*p)[3] = NULL;// 為 數組指針變量 賦值p = array;// 打印 多維數組 元素 值printf("\np:\n");for(i = 0; i < 2; i++){for(j = 0; j < 3; j++){printf("%d\n", p[i][j]);}}// 由上面的打印結果可知 , 二維數組的名稱 本質是 一級數組指針// n (n >= 2) 維數組名稱本質 是 n-1 級數組指針// 命令行不要退出system("pause");return 0; }

執行結果 :

總結

以上是生活随笔為你收集整理的【C 语言】数组 ( 多维数组本质 | n 维数组名称本质 是 n-1 级数组指针 )的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。