封裝函式時候,函式內分配記憶體簡單管理方法。

2021-06-12 02:16:49 字數 424 閱讀 3804

網上常見人這樣封裝**,這種**缺點就是要手工處理new處理的記憶體空間。

//讀取乙個檔案的內容到緩衝區,下面的**僅是例子,不寫錯誤處理。

int loadtobuffer(const char* filename, byte* buffer)

處理的辦法,有下面幾種。

1.用智慧型指標代替。

2.用vector代替。

#include #include #include #include #include #include using namespace std;

int loadtobuffer(const char* filename, vector& cv)

int main()

記憶體分配函式

2.c中提供堆區供給開發者分配記憶體空間,動態記憶體分配函式malloc,calloc,realloc 1 malloc函式的使用,原型為void malloc int length 引數為分配記憶體空間的大小 將記憶體分配4個位元組給乙個int型指標 返回值為任何指標 考慮到不同平台,可以使用si...

記憶體分配函式

1 malloc 函式 void malloc unsigned int size 在記憶體的動態分配區域中分配乙個長度為size的連續空間,如果分配成功,則返回所分配記憶體空間的首位址,否則返回null,申請的記憶體不會進行初始化。2 calloc 函式 void calloc unsigned ...

常見記憶體分配函式

1 kmalloc 核心函式 include void kmalloc size t size,int flags 最大為 128k void kfree void ptr kmalloc分配一塊物理空間和虛擬空間都連續,大小為size的記憶體。常用的flags標誌有 gfp atomic 用來從中...