日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
介紹C++中堆內(nèi)存的概念和操作方法

堆內(nèi)存(heap)是什么呢?

創(chuàng)新互聯(lián)建站-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性價(jià)比歙縣網(wǎng)站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式歙縣網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋歙縣地區(qū)。費(fèi)用合理售后完善,十載實(shí)體公司更值得信賴。

我們知道在c/c++中定義的數(shù)組大小必需要事先定義好,他們通常是分配在靜態(tài)內(nèi)存空間或者是在棧內(nèi)存空間內(nèi)的,但是在實(shí)際工作中,我們有時(shí)候卻需要?jiǎng)討B(tài)的為數(shù)組分配大小,在這里c庫中的malloc.h頭文件中的malloc()函數(shù)就為您解決了問題,(bc或者是在老的標(biāo)準(zhǔn)中是alloc.h),它的函數(shù)原形是void* malloc(size_t size),在動(dòng)態(tài)開辟的內(nèi)存中,在使用完后我們要使用free()函數(shù)來釋放動(dòng)態(tài)開辟的內(nèi)存空間!

下面我們來看一個(gè)完整的例子!

C++ 代碼:

 
 
  1. //程序作者:管寧 
  2. //所有稿件均有版權(quán),如要轉(zhuǎn)載,請(qǐng)務(wù)必注明出處和作者
  3. #include<iostream> 
  4. #include<malloc.h>
  5. usingnamespacestd; 
  6. main() 
  7.  intarraysize;//元素個(gè)數(shù) 
  8.  int*array;//用于動(dòng)態(tài)開辟數(shù)組的指針變量
  9.  cin>>arraysize; 
  10.  array=(int*)malloc(arraysize*sizeof(int));
  11. //利用malloc在堆內(nèi)存中開辟內(nèi)存空間,它的大小是元素的個(gè)數(shù)乘以該數(shù)據(jù)類型的長(zhǎng)度
  12.  for(inti=0;i<arraysize;i++) 
  13.  { 
  14. array[i]=i; 
  15.  }
  16.  for(inti=0;i<arraysize;i++) 
  17.  { 
  18. cout<<array[i]<<","; 
  19.  } 
  20.  cout<<endl; 
  21.  free(array);//利用free釋放動(dòng)態(tài)開辟的堆內(nèi)存空間 
  22.  cin.get(); 
  23.  cin.get(); 

這里要特別注意個(gè)地方就是:

C++ 代碼:

 
 
  1. array=(int*)malloc(arraysize*sizeof(int)); 

malloc()的函數(shù)原形本身是void* malloc(size_t size),由于動(dòng)態(tài)分配的空間計(jì)算機(jī)并不知道是用來做什么的所以是無類型的,但你要把它用在動(dòng)態(tài)的整形數(shù)組上的時(shí)候就要顯式的轉(zhuǎn)換成int*了!


網(wǎng)頁名稱:介紹C++中堆內(nèi)存的概念和操作方法
分享URL:http://www.dlmjj.cn/article/dhchhie.html