亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > C++ > 正文

C++中關于[]靜態數組和new分配的動態數組的區別分析

2020-01-26 15:23:29
字體:
來源:轉載
供稿:網友

本文以實例分析了C++語言中關于[]靜態數組和new分配的動態數組的區別,可以幫助大家加深對C++語言數組的理解。具體區別如下:

一、對靜態數組名進行sizeof運算時,結果是整個數組占用空間的大小;
因此可以用sizeof(數組名)/sizeof(*數組名)來獲取數組的長度。
int a[5]; 則sizeof(a)=20,sizeof(*a)=4.因為整個數組共占20字節,首個元素(int型)占4字節。
int *a=new int[4];則sizeof(a)=sizeof(*a)=4,因為地址位數為4字節,int型也占4字節。

二、靜態數組作為函數參數時,在函數內對數組名進行sizeof運算,結果為4,因為此時數組名代表的指針即一個地址,占用4個字節的內存(因為在傳遞數組名的參數時,編譯器對數組的長度不做檢查,具體可參考前面一篇c++對數組的引用實例分析)。對動態數組的函數名,無論何時進行sizeof運算,得到的結果都是4.

三、new還需要你delete,是在堆分配空間,效率較低;而[]直接在棧上分配,會自動釋放,效率高,但是??臻g有限

四、通過函數返回一個數組的問題

函數聲明的靜態數組不可能通過函數返回,因為生存期的問題,函數調用完其內部變量占用的內存就被釋放了。如果想通過函數返回一個數組,可以在函數中用new動態創建該數組,然后返回其首地址。
其原因可以這樣理解,因為[]靜態數組是在棧中申請的,而函數中的局部變量也是在棧中的,而new動態數組是在堆中的分配的,所以函數返回后,棧中的東西被自動釋放,而堆中的東西如果沒有delete不會自動釋放。

例子如下:

int *test(int *b) //b可以是靜態數組的數組名,也可以是動態數組的首地址{  for(int i=0;i<5;i++) //輸出傳入的數組各元素   cout<<*(b+i)<<" ";  cout<<endl;  int *c=new int[5]; //動態創建一個數組  //如果將綠色部分換為int c[5];則主函數中調用test無法得到c數組  for(i=0;i<5;i++)  //新數組的各項值等于傳入的數組各項值加5   *(c+i)=*(b+i)+5;  return c;     //返回新創建的動態數組的首地址}int main(){ int *b=new int[5]; //創建動態數組b for(int i=0;i<5;i++)//賦值  *(b+i)=i;  //綠色部分也可以換為int b[5]={0,1,2,3,4};即也可以是靜態數組 int *c=test(b);   //將b作為參數,調用test函數,返回值賦給c for(i=0;i<5;i++)  //輸出test返回的數組的各項   cout<<*(c+i)<<" "; cout<<endl; return 0;}

相信看過本文實例分析之后可以進一步加深讀者對C++數組的認識。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
97精品在线观看| 亚洲性线免费观看视频成熟| 中文字幕综合一区| 亚洲福利在线看| 欧美激情免费视频| 亚洲精品999| 日韩高清电影好看的电视剧电影| 精品国产1区2区| 亚洲欧美制服综合另类| 少妇高潮久久77777| 91精品国产综合久久香蕉的用户体验| 欧美激情按摩在线| 欧美久久精品午夜青青大伊人| 亚洲人成在线免费观看| 国产成人拍精品视频午夜网站| 久久99精品久久久久久青青91| 午夜精品一区二区三区在线视频| 久久久久久久久91| 日韩高清电影免费观看完整| 26uuu另类亚洲欧美日本老年| 国产综合久久久久久| 久久91精品国产91久久跳| 日韩精品中文字幕久久臀| 久久天堂电影网| 欧美剧在线观看| 国产精品人成电影| 亚洲韩国欧洲国产日产av| 久久久久久久色| 中文字幕一区二区三区电影| 日韩69视频在线观看| 国产在线观看91精品一区| 欧美精品激情视频| 黄网动漫久久久| 欧美日韩国产中文精品字幕自在自线| 亚洲第一av网| 国产香蕉97碰碰久久人人| 97精品欧美一区二区三区| 国产精品扒开腿做爽爽爽视频| 亚洲天堂男人天堂女人天堂| 欧美视频在线观看免费| 大胆人体色综合| 中文字幕欧美日韩精品| 自拍偷拍亚洲欧美| 国产精品久久久一区| 国产偷亚洲偷欧美偷精品| 亚洲大胆美女视频| 欧美肥老太性生活视频| 国产免费一区二区三区在线观看| 欧美成人在线免费| 日本午夜精品理论片a级appf发布| 亚洲欧美日韩一区二区三区在线| 国产精品男人爽免费视频1| 国产精品视频精品| 在线观看欧美日韩| 亚洲xxxx做受欧美| 日韩中文有码在线视频| 成人av色在线观看| 性欧美亚洲xxxx乳在线观看| 国产精品www| 国内自拍欧美激情| 欧美性生交大片免网| 日韩精品久久久久久久玫瑰园| 亚洲奶大毛多的老太婆| 精品高清美女精品国产区| 欧美成人精品一区二区| 自拍偷拍亚洲在线| 1769国产精品| 国产999在线观看| 亚洲精品国产免费| 日韩精品视频在线| 欧美大片欧美激情性色a∨久久| 欧美成人激情图片网| 欧美另类老肥妇| 91精品综合视频| 欧美成人在线网站| 日韩免费av片在线观看| 欧美亚洲另类激情另类| 亚洲肉体裸体xxxx137| 国产视频欧美视频| 亚洲人成电影网站色www| 美日韩精品视频免费看| 欧美高清性猛交| 欧美不卡视频一区发布| 国产成人小视频在线观看| 亚洲成色777777在线观看影院| 亚洲精品国产福利| 日韩电影大片中文字幕| 亚洲精品理论电影| 国产欧美精品一区二区| 一本久久综合亚洲鲁鲁| 国产精品色婷婷视频| 久久中文字幕在线| 最新中文字幕亚洲| 亚洲精品久久久久| 欧美精品videosex性欧美| 懂色aⅴ精品一区二区三区蜜月| 欧美成人精品三级在线观看| 久久精品国产免费观看| 欧美性猛交丰臀xxxxx网站| 久久久91精品国产一区不卡| 久久久成人精品视频| 亚洲国产日韩欧美在线动漫| 久久国产精品影片| 欧洲成人在线观看| 国产精品99久久久久久白浆小说| 欧美成人激情视频免费观看| 国产精品劲爆视频| 97色在线视频观看| 欧美色欧美亚洲高清在线视频| 欧美在线观看www| 欧美日韩性视频| 日韩欧美成人区| 欧美大片在线看免费观看| 日韩中文字幕精品视频| 久久久91精品| 俺去亚洲欧洲欧美日韩| 96pao国产成视频永久免费| 免费不卡在线观看av| 国产日韩在线精品av| 国产精品视频播放| 亚洲综合第一页| 亚洲色图在线观看| 精品免费在线观看| 91精品中国老女人| 精品毛片三在线观看| 国产日产欧美a一级在线| 精品呦交小u女在线| 亚洲国产日韩欧美在线图片| 亚洲国产一区自拍| 久久久999精品| 亚洲人精选亚洲人成在线| 最好看的2019年中文视频| 亚洲一区亚洲二区亚洲三区| 国产a级全部精品| 欧美巨乳美女视频| 国产在线精品成人一区二区三区| 国产精品免费一区豆花| 久久精品成人动漫| 国产精品免费电影| 亚洲第一在线视频| 在线观看国产成人av片| 久久精品视频网站| 亚洲精品视频免费| 亚洲一区二区三区乱码aⅴ蜜桃女| 日韩美女免费视频| 欧美亚洲另类在线| 成人有码视频在线播放| 日本午夜精品理论片a级appf发布| 国产成人精品日本亚洲专区61| 久久久综合免费视频| 中文字幕日韩欧美精品在线观看| 中文日韩电影网站| 欧美人交a欧美精品| 国产精品午夜国产小视频| 亚洲国产中文字幕在线观看| 国产一区二区三区直播精品电影| 国产成人中文字幕| 久99九色视频在线观看| 黑人巨大精品欧美一区二区三区| 国产精品久久色| 色播久久人人爽人人爽人人片视av| 欧美成人三级视频网站| 国产精品久久久久高潮| 国产成人精品视频在线|