a亚洲精品_精品国产91乱码一区二区三区_亚洲精品在线免费观看视频_欧美日韩亚洲国产综合_久久久久久久久久久成人_在线区

首頁 > 編程 > C > 正文

詳細解析C++ 在堆上開辟與釋放二維、三維指針

2020-02-24 14:27:41
字體:
來源:轉載
供稿:網友

C++新手學習者在使用指針時通常會頭痛,實際上指針的概念非常簡單,其實只要他們能理解這樣一個簡單的原理,他們就能對指針有一定的理解,下面就跟著武林技術頻道小編的步伐來了解詳細解析C++ 在堆上開辟與釋放二維、三維指針。

?例如 int *a = new int[10]; 一維指針其實就相當于一維數組,不用去看書上所說的數組在內存中的首地址這些晦澀的話,以此類推 二維指針就相當于二維數組,新手對一維數組的開辟與釋放比較容易熟悉,例如上面的a 釋放就是 delete []a; a = NULL; 注意a = NULL; 必須要加上,這樣是為了避免這個指針會變成“野指針”。寫程序時一定要注意規范性和嚴謹性,避免可能會出現的錯誤。

?

//二維指針的開辟與釋放
int **b = NULL;
b = new int*[10];
for(int i = 0; i != 10; ++i)
{
???? b[i] = new int[50];
???? memset(b[i], 0, sizeof(int)*50);
}

?

//這樣就在堆上開辟了int類型的二維指針,大小為10*50,相當于在堆上一個二棧數組int b[10][50];
for(int i = 0; i != 10; ++i)
{
???? delete []b[i];
???? b[i] = NULL;
}
delete []b;
b = NULL;

//三維指針的開辟與釋放
int ***a = NULL;
a = new int**[10];
for(int i = 0; i != 10; ++i)
{
??? a[i] = new int*[50];
??? for(int j = 0; j != 50; ++j)
??? {
??????? a[i][j] = new int[30];
??????? memset(a[i][j], 0, sizeof(int)*30);
??? }
}

//這樣就在堆上開辟了int類型的三維指針,大小為10*50*30,相當于在棧上一個二維數組int a[10][50][30];
for(int i = 0; i != 10; ++i)
{
??? for(int j = 0; j != 50; ++j)
??? {
?????? delete []a[i][j];
?????? a[i][j] = NULL;??????????
??? }
??? delete []a[i];
??? a[i] = NULL;
}
delete []a;
a = NULL;

希望武林技術頻道小編為大家介紹的詳細解析C++ 在堆上開辟與釋放二維、三維指針,這些知識對程序員有很大的幫助,希望大家能認真了解下,更多相關知識盡在武林技術頻道!

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: segui88久久综合9999 | 一区二区在线视频 | 久久精品成人免费视频 | 五月婷在线观看 | 久久艹在线观看 | 国产亚洲aaa | 最近中文字幕在线视频1 | 国产日韩欧美一区二区 | 午夜操操 | 精品久久久久久亚洲精品 | 欧日韩不卡在线视频 | 国产一区二区视频精品 | www伊人| 三级在线观看 | 久久久久久久99精品免费观看 | 国产一区二区在线免费观看 | 91极品在线| 日韩av一区二区三区在线观看 | 天堂精品一区 | 一本岛在线视频 | 久久久久久免费 | 黄色小视频在线观看 | 黄色影院在线看 | 色在线免费视频 | 午夜国产一级 | 欧美精品在线观看 | 999久久久免费精品国产 | 免费一级欧美在线观看视频 | 91视频国产区 | 国产午夜久久 | 青青草激情视频 | 北条麻妃99精品青青久久 | 久久99精品久久久久久 | 黄色欧美一级片 | 一级毛片在线看aaaa | 精品视频在线观看 | 欧美日韩一区二区三区在线观看 | 亚洲一区高清 | 久久久精品视频在线观看 | 国产一区二区三区四区五区 | 呦呦精品 |