四、
memcpy
名稱:memcpy
功能:拷貝記憶體空間
標頭檔案:
#include
.h>
函式原形:
void *memcpy(void *dest,void *src,unsigned int count);
引數:
dest 目標記憶體區
src原記憶體區
count 要複製的位元組數
返回值:
指向dest的指標
memcpy會把src所指記憶體區複製count個位元組到dest所指記憶體區.如果count比src位元組數大,strcpy會拷貝'\0'後結束.要注意dest和src不要重疊.
memcpy只是拷貝記憶體空間,不處理空間重疊的問題.
main()
{ int *p1=null;
int *p2=null;
int q;
int i;
p1=malloc(sizeof(int)*10);
if(p1==null)
exit(1);
p2=malloc(sizeof(int)*5);
if(p2==null)
exit(1);
memset(p1,0,sizeof(int)*10);
memcpy(p2,p1,sizeof(int)*5);
q=p2;
for(i=0;i<5;i++)
printf("%d",*(q++));
free(p1);
free(p2);
) 執行結果為5個0.
五、memmove
名稱:memmove
功能:拷貝(移動)記憶體空間
標頭檔案:
#include
.h>
函式原形:
void *memmove(void *dest,void *src,unsigned int count);
引數:
dest 目標記憶體區
src原記憶體區
count 要複製的位元組數
返回值:
指向dest的指標
memmove和函式memcpy函式功能一樣,但只是拷貝記憶體空間,不處理空間重疊的問題.memmove會處理空間重疊問題.當dest和src重疊時,仍能正確處理,但src內容發生改變.
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...
C語言記憶體操作函式彙總
一 malloc calloc 名稱 malloc calloc 功能 動態記憶體分配函式 標頭檔案 include h 函式原形 void malloc size t size void calloc size t num,size t size 引數 size 分配記憶體塊的大小 num 分配記...