實現memcpy和memmove函式

2021-07-16 09:37:21 字數 856 閱讀 4976

題目:

自己定義乙個函式,實現my_memcpy和my_memmove函式。

題目分析:

memcpy函式主要實現的是記憶體的拷貝,函式接受任意型別的引數,並且有拷貝個數的限制,函式與strcpy函式在功能上有相似點,也有不同點。memmove函式在memcpy函式的基礎上解決了記憶體重疊的問題。下面是memcpy和memmove函式的實現:

my_memmove函式:

#define _crt_secure_no_warnings 1

#include #include #include //實現記憶體拷貝函式

void *my_memcpy(void *p1, const void *p2, size_t count)

//count為記憶體的大小(所拷貝的位元組數)

return p1;} 

int main()

;    char str = "abcdef";

my_memcpy(dst, str, 4);

printf("%s\n", dst);

system("pause");

return 0;

}

my_memmove函式:

#define _crt_secure_no_warnings 1

#include #include #include //實現記憶體移動

void *my_memmove(void *p1, const void *p2, size_t count)

}else

}return dst;} 

int main()

實現memcpy和memmove函式

memcpy 函式和memmove 函式都是c語言中的庫函式,在標頭檔案string.h中,作用是拷貝一定長度的記憶體的內容,原型分別如下 void memcpy void dst,const void src,size t count void memmove void dst,const voi...

memcpy和memmove的實現

當我們不考慮一塊記憶體的具體內容與型別,而需要進行拷貝時,我們經常會用到memcpy或者memmove,memcpy和memmove 都是c語言中的庫函式,在標頭檔案string.h中,作用是拷貝一定長度的記憶體的內容,原型分別如下 void memcpy void dst,const void s...

memcpy和strcpy函式實現

函式原型 void memcpy void dest,const void src,size t n 思路 先將void轉化為char,然後按位賦值。memcpy不會按照 0 來判斷字串拷貝。void memcpy void dest,const void src,size t len return...