C 記憶體操作函式

2021-08-19 11:16:30 字數 701 閱讀 5716

void* memcpy(void* dest , void* src, size_t length)函式:函式從src的起始位置複製length個位元組到dest的記憶體起始位置,它並不關心資料型別,只是逐字節的進行複製。

注意點:

1、dest指標要分配足夠的空間,大於或等於 length個位元組的空間。如果沒有分配空間,會出現斷錯誤。

2、dest和src所指的記憶體空間不能重疊。即dest < src 或 dest > src+length

原始碼:void memcpy (void* dest , const void* src , size_t length)

memcpy函式並不關係資料型別,它只是逐字節的複製。

memmove(void* dst,void const * src,size_t length)函式:

與memcpy功能一樣,只是這裡它會考慮記憶體重疊的問題,當src和dest存在重疊時,它同樣可以正確處理,不過執行效率會比memcpy慢一些。

原始碼:void* memmove (void* dst , void const * src , size_t length) else

return dest;

memset函式是逐字節拷貝,利用memset進行初始化複製比手動複製要快的多,適合於進行初始化。

使用memset的時候要格外小心,在給char以外的資料賦值時,只能初始化為0或者-1;

C記憶體操作函式

1 c語言跟記憶體分配方式 1 從靜態儲存區域分配.內存在程式編譯的時候就已經分配好,這塊內存在程式的整個執行期間都存在.例如全域性變數 static變數.2 在棧上建立 在執行函式時,函式內區域性變數的儲存單元都可以在棧上建立,函式執行結束時這些儲存單元自動被釋放.棧記憶體分配運算內置於處理器的指...

記憶體操作函式(C)

1.名稱 malloc calloc 功能 動態記憶體分配函式 標頭檔案 include 函式原型 void malloc size t size void calloc int num,size t size 其中 num為分配記憶體塊的個數,size為分配記憶體塊的大小 返回值 分配成功返回分配...

c語言記憶體操作函式

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