realloc

1. realloc失敗的時候,返回NULL

2. realloc失敗的時候,原來的內存不改變,也就是不free或不move,(這個地方很容易出錯)

3. 假如原來的內存後面還有足夠多剩餘內存的話,realloc的內存=原來的內存+剩餘內存,realloc還是返回原來內存的地址; 假如原來的內存後面沒有足夠多剩餘內存的話,realloc將申請新的內存,然後把原來的內存數據拷貝到新內存裏,原來的內存將被free掉,realloc返回新內存的地址
4. 如果size爲0,效果等同於free()
5. 傳遞給realloc的指針必須是先前通過malloc(), calloc(), 或realloc()分配的
發佈了57 篇原創文章 · 獲贊 0 · 訪問量 4萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章