久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

標(biāo)題: malloc new 和space的區(qū)別 [打印本頁]

作者: 51hei單片    時間: 2016-3-13 17:24
標(biāo)題: malloc new 和space的區(qū)別
自己的總結(jié)如有錯誤,歡迎指教,謝謝!!!


malloc  

主要使用在C語言之中   在內(nèi)存的堆中申請一段空間     沒有賦初值    空間
里面的值是沒有清零的,   使用時最好使用memset將此段空間清零。

此函數(shù)是一個指針類型的函數(shù),返回值是一個指針指向分配的開頭的位置
但是指針的類型為   void  型的,因此需要在malloc的前面加上強(qiáng)制的轉(zhuǎn)換。

malloc 申請的空間    直接使用free釋放
例如  :
int  a   ;
a = (int*)malloc (sizeof(int));
free a;

new  

主要使用在C++語言之中   也是在堆中申請一段空間    不同的就是   在C++
語言之中,申請空間構(gòu)造對象的時候,必須調(diào)用構(gòu)造函數(shù),將對象中的屬性
賦初值,屬性的初始值可能被賦值為零,也可能被賦值為其他的數(shù),也可以
調(diào)用帶參的構(gòu)造函數(shù)。

new申請的空間不必顯式的指出從new返回的指針類型,因?yàn)閚ew知道要分配
的對象的類型。

使用new申請的空間  被調(diào)用析構(gòu)函數(shù)中的delete釋放
例如 :
class student
{
private:
         int  age;
         string  name;       
};
int  main()
{
        student  *s1,*s2;
         s1 = new student[100];   //構(gòu)造100個對象
         s2 = new studnet ;                //構(gòu)造一個對象

         delete []    s1;                  //刪除100個對象
         delete    s2;                        //刪除一個對象
}

space

主要使用在匯編語言之中   申請的空間是在代碼段    本來代碼段中的值是不能改變

的但是space申請的空間中的值可以改變,并且在申請空間的時候系統(tǒng)自動賦值為零
而且space可以使用%替換。

沒有釋放的的函數(shù)    也不需要釋放

例如 :
dataspace    space     100    //申請100個數(shù)據(jù)空間










歡迎光臨 (http://m.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 午夜xxx| 伊人国产女 | 一区二区免费看 | 亚洲精品1区| 日韩小视频 | 长河落日电视连续剧免费观看 | 懂色av色吟av夜夜嗨 | 日本综合久久 | 国产女优在线 | 亚洲乱码在线观看 | 成年人黄色 | 成人国产精品久久久网站 | 九九视频在线 | 久久青草视频 | 饥渴放荡受np公车奶牛 | 天天干女人 | 午夜精品在线观看 | 911看片| 日韩激情视频 | 亚洲欧美视频一区 | 亚欧在线观看 | 国产极品国产极品 | 久久精品视频一区 | 国产成人在线视频 | 自拍偷拍亚洲 | 91久久久久久久 | 毛片网站视频 | 亚洲成人一区二区三区 | 亚洲高清视频在线观看 | 欧美日韩啪啪 | 91欧美激情一区二区三区成人 | 户外少妇对白啪啪野战 | 婷婷伊人网 | 国产成人精品av | 黄色片视频 | av久久| 免费不卡视频 | 欧美一级做性受免费大片免费 | 毛片视频免费 | 亚洲精品自拍视频 | 免费国产视频 |