青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

chenglong7997

C語言 二維數(shù)組動態(tài)分配和釋放 [轉(zhuǎn)]

C 二維數(shù)組動態(tài)分配和釋放
(1)已知第二維
Code-1
char (*a)[N];//指向數(shù)組的指針
a = (char (*)[N])malloc(sizeof(char *) * m);
printf("%d\n", sizeof(a));//4,指針
printf("%d\n", sizeof(a[0]));//N,一維數(shù)組
free(a);
(2)已知第一維
Code-2
char* a[M];//指針的數(shù)組
int i;
for(i=0; i<M; i++)
a[i] = (char *)malloc(sizeof(char) * n);
printf("%d\n", sizeof(a));//4*M,指針數(shù)組
printf("%d\n", sizeof(a[0]));//4,指針
for(i=0; i<M; i++)
   free(a[i]);
(3)已知第一維,一次分配內(nèi)存(保證內(nèi)存的連續(xù)性)
Code-3
char* a[M];//指針的數(shù)組
int i;
a[0] = (char *)malloc(sizeof(char) * M * n);
for(i=1; i<M; i++)
a[i] = a[i-1] + n;
printf("%d\n", sizeof(a));//4*M,指針數(shù)組
printf("%d\n", sizeof(a[0]));//4,指針
free(a[0]);
(4)兩維都未知
Code-4
char **a;
int i;
a = (char **)malloc(sizeof(char *) * m);//分配指針數(shù)組
for(i=0; i<m; i++)
{
a[i] = (char *)malloc(sizeof(char) * n);//分配每個指針?biāo)赶虻臄?shù)組
}
printf("%d\n", sizeof(a));//4,指針
printf("%d\n", sizeof(a[0]));//4,指針
for(i=0; i<m; i++)
{
free(a[i]);
}
free(a);
(5)兩維都未知,一次分配內(nèi)存(保證內(nèi)存的連續(xù)性)
Code-5
char **a;
int i;
a = (char **)malloc(sizeof(char *) * m);//分配指針數(shù)組
a[0] = (char *)malloc(sizeof(char) * m * n);//一次性分配所有空間
for(i=1; i<m; i++)
{
a[i] = a[i-1] + n;
}
printf("%d\n", sizeof(a));//4,指針
printf("%d\n", sizeof(a[0]));//4,指針
free(a[0]);
free(a);
2.C++動態(tài)分配二維數(shù)組
(1)已知第二維
Code-6
char (*a)[N];//指向數(shù)組的指針
a = new char[m][N];
printf("%d\n", sizeof(a));//4,指針
printf("%d\n", sizeof(a[0]));//N,一維數(shù)組
delete[] a;
(2)已知第一維
Code-7
char* a[M];//指針的數(shù)組
for(int i=0; i<M; i++)
   a[i] = new char[n];
printf("%d\n", sizeof(a));//4*M,指針數(shù)組
printf("%d\n", sizeof(a[0]));//4,指針
for(i=0; i<M; i++)
   delete[] a[i];
(3)已知第一維,一次分配內(nèi)存(保證內(nèi)存的連續(xù)性)
Code-8
char* a[M];//指針的數(shù)組
a[0] = new char[M*n];
for(int i=1; i<M; i++)
a[i] = a[i-1] + n;
printf("%d\n", sizeof(a));//4*M,指針數(shù)組
printf("%d\n", sizeof(a[0]));//4,指針
delete[] a[0];
(4)兩維都未知
Code-9
char **a;
a = new char* [m];//分配指針數(shù)組
for(int i=0; i<m; i++)
{
a[i] = new char[n];//分配每個指針?biāo)赶虻臄?shù)組
}
printf("%d\n", sizeof(a));//4,指針
printf("%d\n", sizeof(a[0]));//4,指針
for(i=0; i<m; i++)
delete[] a[i];
delete[] a;
(5)兩維都未知,一次分配內(nèi)存(保證內(nèi)存的連續(xù)性)
Code-10
char **a;
a = new char* [m];
a[0] = new char[m * n];//一次性分配所有空間
for(int i=1; i<m; i++)
{
a[i] = a[i-1] + n;//分配每個指針?biāo)赶虻臄?shù)組
}
printf("%d\n", sizeof(a));//4,指針
printf("%d\n", sizeof(a[0]));//4,指針
delete[] a[0];
delete[] a;
多說一句:new和delete要注意配對使用,即有多少個new就有多少個delete,這樣才可以避免內(nèi)存泄漏!
3.靜態(tài)二維數(shù)組作為函數(shù)參數(shù)傳遞
如果采用上述幾種方法動態(tài)分配二維數(shù)組,那么將對應(yīng)的數(shù)據(jù)類型作為函數(shù)參數(shù)就可以了。這里討論靜態(tài)二維數(shù)組作為函數(shù)參數(shù)傳遞,即按照以下的調(diào)用方式:
int a[2][3];
func(a);
C語言中將靜態(tài)二維數(shù)組作為參數(shù)傳遞比較麻煩,一般需要指明第二維的長度,如果不給定第二維長度,則只能先將其作為一維指針傳遞,然后利用二維數(shù)組的線性存儲特性,在函數(shù)體內(nèi)轉(zhuǎn)化為對指定元素的訪問。
首先寫好測試代碼,以驗(yàn)證參數(shù)傳遞的正確性:
(1)給定第二維長度
Code-11
void func(int a[][N])
{
printf("%d\n", a[1][2]);
}
(2)不給定第二維長度
Code-12
void func(int* a)
{
printf("%d\n", a[1 * N + 2]);//計(jì)算元素位置
}

注意:使用該函數(shù)時需要將二維數(shù)組首地址強(qiáng)制轉(zhuǎn)換為一維指針,即func((int*)a);

posted on 2012-03-26 07:49 Snape 閱讀(343) 評論(0)  編輯 收藏 引用 所屬分類: C++ 轉(zhuǎn)載

導(dǎo)航

<2025年9月>
31123456
78910111213
14151617181920
21222324252627
2829301234
567891011

統(tǒng)計(jì)

常用鏈接

留言簿

隨筆分類

隨筆檔案

文章分類

文章檔案

my

搜索

最新評論

閱讀排行榜

評論排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            欧美久久电影| 久久精品天堂| 亚洲一区二区三区四区在线观看 | 黄色精品一区| 好看的av在线不卡观看| 亚洲第一福利视频| 一区二区三区毛片| 久久成人精品视频| 亚洲电影中文字幕| 久久精品视频一| 欧美v国产在线一区二区三区| 久久综合狠狠综合久久激情| 亚洲欧洲日韩女同| 亚洲美女诱惑| 欧美呦呦网站| 欧美国产一区二区| 制服丝袜激情欧洲亚洲| 欧美在线网址| 欧美日韩国产影院| 狠狠色香婷婷久久亚洲精品| 亚洲伦理网站| 久久av在线看| 久久精品视频亚洲| 欧美日韩亚洲一区二区| 国产一区在线免费观看| 一区二区三区 在线观看视频| 午夜精品视频在线观看一区二区| 老色批av在线精品| 国产日韩一区二区三区| 99国产精品久久| 久久久久九九九九| 国产精品观看| 99re6热只有精品免费观看| 久久久噜噜噜久久人人看| 99re6这里只有精品| 欧美成在线视频| 午夜伦理片一区| 欧美三区美女| 99在线|亚洲一区二区| 另类激情亚洲| 久久国产欧美精品| 国产女人精品视频| 亚洲愉拍自拍另类高清精品| 国产免费成人在线视频| 欧美理论大片| 亚洲激情午夜| 欧美gay视频| 久久看片网站| 欧美激情一区二区三区在线| 亚洲欧美电影在线观看| 老司机免费视频久久| 国产亚洲欧美另类一区二区三区| 亚洲影院高清在线| 一区二区三区久久| 欧美日韩在线观看一区二区| 亚洲毛片av| 亚洲三级网站| 欧美成人精品福利| 亚洲天堂av在线免费| 欧美日韩网站| 一区二区三区你懂的| 亚洲日本乱码在线观看| 欧美电影资源| 夜夜精品视频一区二区| 亚洲激情成人| 欧美日韩国产一区精品一区| 午夜久久99| 欧美资源在线| 亚洲第一成人在线| 亚洲国产精彩中文乱码av在线播放| 久久久久久久综合| 亚洲大片av| 亚洲日本电影| 国产精品国产三级国产专区53| 亚洲一区二区网站| 午夜精品一区二区三区四区| 国产亚洲精品久久久久动| 久久综合狠狠综合久久综合88| 另类春色校园亚洲| 亚洲免费成人av| 中文成人激情娱乐网| 国产一区二区三区久久悠悠色av| 亚洲第一黄网| 亚洲精选在线观看| 国产精品色婷婷| 美日韩丰满少妇在线观看| 欧美成人四级电影| 久久久久9999亚洲精品| 亚洲国产欧美日韩精品| 欧美视频在线观看免费网址| 久久成人国产精品| 性做久久久久久久免费看| 久久夜精品va视频免费观看| 欧美成人亚洲| 久久成人亚洲| 欧美日韩123| 久久久久一区二区| 欧美三级网址| 亚洲第一区在线观看| 欧美午夜精品久久久久久人妖| 欧美亚洲视频| 欧美日本一道本| 久久偷看各类wc女厕嘘嘘偷窃| 免费精品99久久国产综合精品| 亚洲一区二区精品在线| 久久亚洲综合色| 欧美一区久久| 欧美日韩黄色一区二区| 国产亚洲欧美一区在线观看| 亚洲黄色大片| 欧美精品99| 国产偷自视频区视频一区二区| 快播亚洲色图| 国产精品毛片高清在线完整版| 欧美顶级艳妇交换群宴| 国产精品无码永久免费888| 亚洲第一二三四五区| 亚洲一区二区三区四区五区午夜| 羞羞色国产精品| 国产欧美一区二区三区久久| 亚洲人成在线观看网站高清| 极品日韩久久| 欧美一级视频精品观看| 亚洲在线观看视频网站| 欧美激情精品| 亚洲国产精品久久久久婷婷884 | 国产精品欧美日韩一区二区| 亚洲黄一区二区| 亚洲精品男同| 亚洲国内欧美| 亚洲国产日日夜夜| 久久精品一本久久99精品| 欧美伊人久久久久久午夜久久久久 | 99视频精品全部免费在线| 久久久精品视频成人| 久久精品国产99国产精品澳门| 欧美日韩综合精品| 99人久久精品视频最新地址| 99精品国产在热久久下载| 欧美3dxxxxhd| 亚洲黄色影院| 亚洲精品一区二区三区av| 亚洲欧美在线免费观看| 欧美一区二区成人| 国产美女一区| 久久久久国产成人精品亚洲午夜| 久久久精品午夜少妇| 伊人婷婷欧美激情| 美女国产一区| 99re6热在线精品视频播放速度| 亚洲一区二区三区激情| 亚洲欧美日韩视频一区| 久久久久久久久蜜桃| 在线日韩成人| 欧美日韩高清不卡| 一二三区精品| 久久久久se| 亚洲精选成人| 国产精品久久久久久久久久免费 | 久久久久高清| 在线视频国内自拍亚洲视频| 欧美高清视频一区二区| 一本色道久久综合亚洲91| 亚洲欧美另类在线观看| 午夜精品久久久99热福利| 国产精品日韩在线观看| 亚洲一区二区三区视频播放| 老妇喷水一区二区三区| 亚洲精品乱码| 国产精品亚洲一区二区三区在线| 久久成人18免费网站| 亚洲国产三级| 欧美亚洲一级片| 亚洲国产欧美一区| 久久久久久久久蜜桃| 宅男噜噜噜66一区二区| 黄色成人av网站| 欧美精品1区| 久久超碰97人人做人人爱| 亚洲精品日韩在线观看| 久久aⅴ乱码一区二区三区| 91久久久国产精品| 国产人成一区二区三区影院| 欧美 日韩 国产精品免费观看| 一区二区三区日韩精品视频| 免费日韩精品中文字幕视频在线| 午夜视频在线观看一区二区三区 | 久久精品一本| 国产精品99久久久久久www| 国内成人在线| 国产精品毛片va一区二区三区 | 蜜桃精品一区二区三区| 亚洲欧美日韩第一区| 亚洲美女尤物影院| 亚洲第一综合天堂另类专| 国产日韩欧美亚洲| 国产精品久久国产三级国电话系列 | 欧美极品影院| 老妇喷水一区二区三区| 香蕉av777xxx色综合一区|