国产一区在线观看视频-国产一区在线免费观看-国产一区在线视频-国产一区在线视频观看-国产一区中文字幕在线观看-国产一线二线三线女

正在閱讀:新手入門:C++中堆內(nèi)存(heap)的概念和操作方法新手入門:C++中堆內(nèi)存(heap)的概念和操作方法

2005-03-02 09:46 出處:PConline 作者:管寧 責(zé)任編輯:huangpeidan
 

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

  我們知道在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è)完整的例子:

#include <iostream
#include <malloc.h> 
 
using namespace std; 
main() 

    int arraysize; //元素個(gè)數(shù) 
    int *array; //用于動(dòng)態(tài)開辟數(shù)組的指針變量 
 
    cin>>arraysize; 
    array=(int*)malloc(arraysize * sizeof(int));//利用malloc在堆內(nèi)存中開辟內(nèi)存空間,它的大小是元素的個(gè)數(shù)乘以該數(shù)據(jù)類型的長度 
 
    for(int i=0;i<arraysize;i++)  
    { 
        array[i]=i; 
    } 
 
    for(int i=0;i<arraysize;i++) 
    { 
        cout<<array[i]<<","; 
    } 
    cout<<endl; 
    free(array);//利用free釋放動(dòng)態(tài)開辟的堆內(nèi)存空間 
    cin.get(); 
    cin.get(); 
}

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

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*了。

  下面我們再介紹c++所獨(dú)有的開辟和釋放堆內(nèi)存空間的方法,new修飾符和delete修飾符。

  new和delete修飾符的操作并不需要頭文件的支持,這是c++所獨(dú)有的,new操作要比malloc更為簡單,直接說明開辟的類型的數(shù)目就可以了,delete使用的時(shí)候如果是數(shù)組那么必須使用delete[]。

#include <iostream
 
using namespace std; 
main() 

    int arraysize; //元素個(gè)數(shù) 
    int *array; 
 
    cin>>arraysize; 
     
    array=new int[arraysize];//開辟堆內(nèi)存 
 
    for(int i=0;i<arraysize;i++)  
    { 
        array[i]=i; 
    } 
 
    for(int i=0;i<arraysize;i++) 
    { 
        cout<<array[i]<<","; 
    } 
    cout<<endl; 
    delete[] array;//釋放堆內(nèi)存 
    cin.get(); 
    cin.get(); 
}  

302 Found

302 Found


Powered by Tengine
tengine
主站蜘蛛池模板: 伊人久久精品成人网 | 九月丁香婷婷亚洲综合色 | 亚洲成a人 | 欧美成人午夜在线全部免费 | 成 人 黄 色 大 片全部 | 天天摸日日碰天天看免费 | 国产一区精品视频 | 久久久免费观成人影院 | 视频二区欧美 | 天天干夜夜草 | a级精品九九九大片免费看 a级毛片高清免费视频 | 久久伊人最新 | 99久久免费精品高清特色大片 | 国产香蕉在线视频一级毛片 | 免费羞羞网站 | 九九视频只有精品 | 久久国产精品只做精品 | 亚洲黄色免费看 | 亚洲天堂爱爱 | 中文字幕天天躁夜夜狠狠综合 | 国产一级一级毛片 | 99秒拍福利大尺度视频 | 中文字幕中韩乱码亚洲大片 | 五月久久婷婷综合片丁香花 | 久久大香伊蕉在人线观看热2 | 性夜影院爽黄a爽免费看网站 | 国产国产人免费观看在线视频 | 成人小视频在线观看免费 | 99久久影院| 免费欧洲毛片a级视频老妇女 | 亚洲欧美高清在线 | 九九影音| 五月婷婷狠狠干 | 国产91久久久久久久免费 | 青青青青青国产费线在线观看 | 色婷婷综合久久久久中文一区二区 | 在线播放真实国产乱子伦 | 久久久久影视 | 四虎在线观看免费永久 | 一级欧美一级日韩毛片99 | 真人一级毛片免费观看视频 |