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

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>
            亚洲视频自拍偷拍| 亚洲第一精品在线| 欧美一区午夜精品| 99成人在线| 日韩一级精品视频在线观看| 亚洲国产网站| 亚洲国产mv| 国产精品99久久久久久宅男 | 久久婷婷色综合| 欧美在线视频免费播放| 欧美在线免费观看亚洲| 欧美一区二区三区在线视频 | 欧美喷水视频| 欧美日韩精品欧美日韩精品一| 欧美日本韩国| 国产精品亚洲片夜色在线| 国产精品日韩欧美综合| 国产一区二区在线观看免费| 亚洲激情精品| 亚洲欧美日韩在线一区| 久久噜噜亚洲综合| 亚洲电影免费观看高清完整版在线| 亚洲精品影视在线观看| 亚洲综合二区| 久久视频这里只有精品| 欧美精品一区三区| 国产乱人伦精品一区二区 | 国内精品伊人久久久久av一坑 | 亚洲欧美激情视频在线观看一区二区三区| 亚洲欧美日韩电影| 免费91麻豆精品国产自产在线观看| 亚洲欧洲三级| 欧美一级片久久久久久久 | 国产欧美一区二区在线观看| 亚洲国产天堂久久综合网| 亚洲在线中文字幕| 免费视频最近日韩| 亚洲一区中文| 欧美另类在线观看| 国内自拍视频一区二区三区| 日韩小视频在线观看专区| 久久久美女艺术照精彩视频福利播放 | 欧美在线观看视频一区二区| 久久久久亚洲综合| 国产精品免费一区豆花| 亚洲国产精品一区制服丝袜| 欧美亚洲网站| 99精品热视频只有精品10| 美玉足脚交一区二区三区图片| 欧美精品日韩综合在线| 在线观看成人网| 久久福利视频导航| 亚洲视频视频在线| 欧美三区在线视频| 一区二区三区四区五区视频 | 亚洲欧美国产视频| 亚洲国产高清高潮精品美女| 欧美专区亚洲专区| 国产欧美一区二区精品性色| 一区二区免费看| 亚洲国产精品一区二区第四页av| 西西人体一区二区| 国产精品入口福利| 一区二区三区四区国产精品| 亚洲精品国产精品久久清纯直播| 久久午夜羞羞影院免费观看| 韩国美女久久| 久久一二三国产| 欧美影院在线播放| 国产性色一区二区| 久久露脸国产精品| 久久久久久国产精品一区| 韩国成人福利片在线播放| 久久久久久久999| 久久精品欧洲| 在线精品视频在线观看高清| 亚洲丶国产丶欧美一区二区三区| 欧美成人四级电影| 日韩视频―中文字幕| 亚洲精品中文字幕女同| 欧美午夜性色大片在线观看| 欧美在线91| 久久久久国产精品一区二区| 亚洲黄色片网站| 日韩五码在线| 国产欧美三级| 欧美mv日韩mv国产网站| 男同欧美伦乱| 亚洲一区二区三区在线观看视频| 亚洲午夜在线| 在线成人国产| 99精品免费| 国产在线乱码一区二区三区| 欧美成人dvd在线视频| 欧美日韩国产三区| 欧美中文字幕视频在线观看| 久久全球大尺度高清视频| 一本色道久久加勒比精品| 在线亚洲电影| 亚洲福利av| 一区二区三区三区在线| 国产一区二区丝袜高跟鞋图片| 欧美激情第9页| 国产精品扒开腿做爽爽爽视频| 香蕉精品999视频一区二区| 久久香蕉国产线看观看网| 亚洲视频在线观看网站| 久久都是精品| 亚洲一区观看| 免费观看亚洲视频大全| 午夜精品视频在线| 欧美成人精品在线观看| 欧美一区二区在线| 欧美精品一区二区三区在线播放| 久久国产精品久久久久久| 欧美不卡激情三级在线观看| 欧美一区二区视频在线观看2020| 欧美高清你懂得| 久久综合网络一区二区| 国产精品jizz在线观看美国 | 久久久久国产一区二区三区| 欧美国产精品专区| 久久久久久久网| 国产精品成人午夜| 另类尿喷潮videofree| 亚洲专区免费| 国产精品日韩一区二区三区| 国产精品视频yy9299一区| 欧美va亚洲va香蕉在线| 欧美午夜性色大片在线观看| 欧美激情亚洲综合一区| 精品成人国产| 小处雏高清一区二区三区| 一区二区三区欧美视频| 美国十次成人| 蜜臀av性久久久久蜜臀aⅴ四虎| 国产女人精品视频| 亚洲一二三级电影| 国产精品99久久99久久久二8 | 麻豆成人在线| 免费在线看一区| 韩国女主播一区二区三区| 欧美一区成人| 久久精品国产免费观看| 国产精品免费一区豆花| 一区二区三区欧美亚洲| 一区二区三区视频在线| 欧美精品亚洲一区二区在线播放| 欧美电影美腿模特1979在线看 | 激情综合色综合久久| 久久久久九九九九| 欧美阿v一级看视频| 亚洲高清久久网| 欧美1区免费| 亚洲另类自拍| 亚洲欧美区自拍先锋| 国产乱肥老妇国产一区二 | 欧美顶级艳妇交换群宴| 亚洲国产色一区| 亚洲九九九在线观看| 欧美伦理在线观看| 亚洲一区二区三区777| 久久精品人人| 亚洲国产综合在线| 欧美日韩亚洲一区二区三区四区 | 亚洲丰满在线| 欧美日本一道本在线视频| 亚洲美女精品一区| 欧美一区二区三区在线视频| 一区免费在线| 欧美精品一区二区三区一线天视频| 日韩亚洲视频| 久久女同互慰一区二区三区| 亚洲日本理论电影| 国产精品毛片大码女人| 久久久99精品免费观看不卡| 亚洲国产精品久久久久婷婷老年| 亚洲一区二区精品在线观看| 国产一区白浆| 欧美日韩国产一区二区三区地区| 亚洲欧美日韩精品一区二区| 欧美大秀在线观看| 欧美一区二区成人6969| 亚洲黄色免费电影| 国产精品爽爽ⅴa在线观看| 女女同性女同一区二区三区91| 一区二区三欧美| 欧美va天堂va视频va在线| 先锋影音网一区二区| 亚洲精品乱码久久久久久久久| 国产欧美日韩中文字幕在线| 欧美激情一区三区| 久久福利一区| 亚洲午夜激情在线| 亚洲第一主播视频| 美女在线一区二区| 午夜精品久久久久久久白皮肤| 亚洲精品四区| 在线不卡中文字幕| 国产偷自视频区视频一区二区|