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

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

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

  堆內存是什么呢?

  我們知道在c/c++中定義的數組大小必需要事先定義好,他們通常是分配在靜態內存空間或者是在棧內存空間內的,但是在實際工作中,我們有時候卻需要動態的為數組分配大小,在這里c庫中的malloc.h頭文件中的malloc()函數就為您解決了問題(bc或者是在老的標準中是alloc.h),它的函數原形是void* malloc(size_t size),在動態開辟的內存中,在使用完后我們要使用free()函數來釋放動態開辟的內存空間。

  下面我們來看一個完整的例子:

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

    int arraysize; //元素個數 
    int *array; //用于動態開辟數組的指針變量 
 
    cin>>arraysize; 
    array=(int*)malloc(arraysize * sizeof(int));//利用malloc在堆內存中開辟內存空間,它的大小是元素的個數乘以該數據類型的長度 
 
    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釋放動態開辟的堆內存空間 
    cin.get(); 
    cin.get(); 
}

  這里要特別注意個地方就是:

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

  malloc()的函數原形本身是void* malloc(size_t size),由于動態分配的空間計算機并不知道是用來做什么的所以是無類型的,但你要把它用在動態的整形數組上的時候就要顯式的轉換成int*了。

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

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

#include <iostream
 
using namespace std; 
main() 

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

302 Found

302 Found


Powered by Tengine
tengine
主站蜘蛛池模板: 一级a爱片久久毛片 | 欧美成人全部免费观看1314色 | 亚洲精品成人一区二区 | 99久久精品国产交换 | 青青热久免费精品视频精品 | 男人深夜影院 | 久久精品是免费100 久久精品首页 | 国产系列 视频二区 | 久久精品国产2020 | 99免费在线播放99久久免费 | 天堂一区| 国产精品国产自线在线观看 | 国产视频久久久久 | 亚洲欧美中文字幕专区 | 四虎欧美| 国产成视频 | 亚洲欧美日韩中文字幕在线一 | 欧洲亚洲视频 | 六月丁香深爱六月综合激情 | 中文字幕国产精品 | xxxx免费观看| 欧美成人七十二式性视频教程 | 97视频免费在线观看 | 午夜时刻免费实验区观看 | 日夜操在线视频 | 亚洲成人视屏 | 国产精品视频免费播放 | 午夜久久久久久久 | 久久这里有精品视频任我鲁 | 亚洲国产精品成 | 亚洲综合春色另类久久 | 欧美乱妇高清无乱码视频在线 | 91久久亚洲精品国产一区二区 | 奇米影视盒7777 | 999视频网 | 亚洲欧美在线中文字幕不卡 | 亚洲最新视频在线观看 | a免费网站| 免费观看呢日本天堂视频 | 亚洲国产成人久久综合一区 | 亚洲第一成人在线 |