C語言記憶體操作函式彙總

2021-05-31 23:22:14 字數 1244 閱讀 3752

一、

malloc/calloc

名稱:malloc/calloc

功能:動態記憶體分配函式

標頭檔案:

#include 

.h>

函式原形:

void *malloc(size_t size);

void *calloc(size_t num,size_t size); 引數

:  size    分配記憶體塊的大小

num  分配記憶體塊的個數

返回值:

成功返回分配記憶體塊的首位址,失敗返回null.

malloc和calloc都可以分配記憶體區,但malloc一次只能申請乙個記憶體區,calloc一次可以申請多個記憶體區.另外calloc會把分配來的記憶體區初試化為0,malloc不會進行初始化.

#include 

#include 

main()

*p=3;

printf("%d/n",*p);

free(p);

} 二、malloc/calloc

名稱:free

功能:動態記憶體釋放函式

標頭檔案:

#include 

.h>

函式原形:

void free(void *ptr); 引數

:  ptr   使用malloc或calloc等記憶體分配函式所返回的記憶體指標 

返回值: 無

free 可以釋放由malloc或calloc等記憶體分配函式分配的記憶體.當程式很大時,期間可能要多次動態分配記憶體,如果不及時釋放的話,程式將要占用很大記憶體.

要注意,如果ptr所指記憶體已被釋放或是未知的記憶體位址,則可能有無法預期的情況發生.若引數為null,則free不會有任何作用.

三、memset

名稱:memset

功能:初始化所指定的記憶體空間

標頭檔案:

#include 

.h>

函式原形:

void *memset(void *buffer,int c,int count); 引數

:  buffer      分配的記憶體

c      初始化內容

count      初始化的位元組數   

返回值:

返回指向buffer的指標

memset把buffer所指記憶體區域的前count個位元組設定成某個字元的ascll值.一般用於給陣列,字串等型別賦值.

main()

執行結果:p1

c語言記憶體操作函式彙總

一 malloc calloc 名稱 malloc calloc 功能 動態記憶體分配函式 標頭檔案 include h 函式原形 void malloc size t size void calloc size t num,size t size 引數 size 分配記憶體塊的大小 num 分配記...

c語言記憶體操作函式

一 malloc calloc 名稱 malloc calloc 功能 動態記憶體分配函式 標頭檔案 include h 函式原形 void malloc size t size void calloc size t num,size t size 引數 size 分配記憶體塊的大小 num分配記憶...

C語言 記憶體操作函式

1.memset 函式 進行記憶體的設定 設定的數要在0 255的範圍內 讀取設定的記憶體時要按字元讀取,也就是ascii碼表示。include include intmain printf n return0 2.memcpy 函式 針對記憶體進行複製 include include intmai...