1.malloc()函式
原型:void *malloc(unsigned size)
其功能是在記憶體的動態儲存區中分配長度為size個位元組的連續空間。
其返回值= 1).分配空間的起始位址(分配成功)
2).空指標null(分配失敗,一般是沒有空間)
2.free(p)函式
該函式表示釋放由p指向的記憶體區,是這部分記憶體可以分配給其它變數。
舉例:#include
main()
double *p;
p=(double*)malloc(sizeof(double));
if(p==0)
printf("molloc errror\n");
exit(0);
*p=78.786;
printf("*p=%f\n",*p);
c 記憶體的開闢和釋放
關於new和delete,malloc和free。我們都知道,是在不同的語言裡面做相應的記憶體的開闢和釋放工作的,那麼這篇博文就來好好的了解一下他們的區別和工作原理吧 1 引言 首先,我們還是寫乙個我們經常使用的在c語言中動態開闢的方式 int main p 10 free p return0 其中...
記憶體的動態開闢與釋放
malloc free與new delete 1 new會拋異常,但是malloc不會拋異常 2 new delete屬於操作符,但是malloc free屬於函式 3 new申請空間的時候會呼叫建構函式進行初始化,malloc不會 delete釋放記憶體時會呼叫析構函式,free只是切斷了指向關係...
delete釋放new 開闢的記憶體
直接看下面這道題 使用 char p new char 10 申請一段記憶體,然後使用delete p釋放,有什麼問題?a 會有記憶體洩露 b 不會有記憶體洩露,但不建議用 c 編譯就會報錯,必須使用delete p d 編譯沒問題,執行會直接崩潰 這道題題目開闢的是10個char型別的空間,因為是...