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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

【C 语言】二级指针 内存模型图 ( 指针数组 | 二维数组 | 自定义二级指针内存 )

發布時間:2025/6/17 编程问答 19 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【C 语言】二级指针 内存模型图 ( 指针数组 | 二维数组 | 自定义二级指针内存 ) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

文章目錄

  • 前言
  • 一、指針數組
  • 二、二維數組
  • 三、自定義二維指針內存

前言

繪制如下 333 種二級指針的內存模型 :

// I. 指針數組 char *p1 []= {"12", "ab", "34"};// II. 二維數組 char p2[3][4] = {"12", "ab", "34"};// III. 自定義二維指針內存 int i = 0, num=3; char **p3 = (char **) malloc(sizeof(char) * 3); for(i = 0; i < num; i++) {p[i] = (char *)malloc(sizeof (char) * 4);sprintf(p[i], "%d%d", i + 1, i + 1); }



一、指針數組



繪制如下代碼內存結構圖 :

// I. 指針數組 char *p1[] = {"12", "ab", "34"};

指針數組 內存結構圖 :

在 棧內存 中 , 是一個 指針數組 , 數組中有 333 個元素 , 都是指針數據類型 ;

指針 指向的 位置 是 全局區 的 常量區 ;





二、二維數組



繪制 二維數組 的內存模型圖 :

// II. 二維數組 char p2[3][4] = {"12", "ab", "34"};

繪制結果如下 : 上述 二維數組 都在 棧內存中 ,

  • 每個 一維數組 都占 444 字節 ;
  • 一維數組中 , 默認值都為 ‘\0’ 字符 ;
  • 注意 棧內存 生長方向是 從 高地址 -> 低地址 ;
  • 注意 數組 的內存方向是從 低地址 -> 高地址 , p[0] 在低地址 , p[1] 在高地址 ;
  • 全局區存在 初始化時 涉及到 的 相應字符串 常量 ;





三、自定義二維指針內存



繪制 自定義二維指針內存 的內存模型圖 :

// III. 自定義二維指針內存 int i = 0, num=3; char **p3 = (char **) malloc(sizeof(char) * 3); for(i = 0; i < num; i++) {p[i] = (char *)malloc(sizeof (char) * 4);sprintf(p[i], "%d%d", i + 1, i + 1); }

繪制結果如下 : 棧內存 中 只有一個 二維指針 , 其指向的 一維指針 都在 堆內存中 , 一維指針 也是指向 堆內存 中的數據 ;

注意 指針 指向 的是 內存塊的 低地址 , 不要指錯了位置 ;

全局區 中的 常量區 中 , 存在初始化的 字符串 常量 數據 ;

總結

以上是生活随笔為你收集整理的【C 语言】二级指针 内存模型图 ( 指针数组 | 二维数组 | 自定义二级指针内存 )的全部內容,希望文章能夠幫你解決所遇到的問題。

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