1.memcpy( )函数
memcpy( )函数可以把内存中的数据进行拷贝,拷贝的数据类型可以是int类型、char类型、sturct类型等等。这就是memcpy( )函数与strcpy( )函数的最大区别。因为strcpy( )函数只能对char类型的数据进行拷贝。
对memcpy( )函数进行模拟实现,代码如下:
2.memmove( )函数
memmove( )函数和memcpy( )的函数差别:
memmove( )函数处理的源内存块和目标内存块是可以重叠的。当进行拷贝时,如果源空间和目标空间出现重叠,就得使用memmove函数处理,如果使用memcpy( )函数,程序可能崩溃。
对memmove( )函数进行模拟实现,代码如下:
3.memset( )函数
对memset( )函数进行模拟实现,代码如下:
内存:
执行前: 执行后:
0x0058FAA0 44 33 22 11 0x0058FAA0 06 06 06 06
0x0058FAA4 11 22 33 44 0x0058FAA4 06 06 06 06
0x0058FAA8 03 00 00 00 0x0058FAA8 06 06 06 06
0x0058FAAC 04 00 00 00 0x0058FAAC 06 06 06 06
0x0058FAB0 05 00 00 00 0x0058FAB0 06 06 06 06
4.memcmp( )函数
memcmp( )函数的实现和strcmp( )函数的实现大同小异。
对memcmp( )函数进行模拟实现,代码如下: