首先说明一些mem系列的函数针对内存进行操作,操作的基本单位是字节,与类型无关。头文件均为<string.h>
1.memcpy
void * memcpy ( void * destination, const void * source, size_t num );
从source位置向后复制num个字节数据到destination的内存位置中。
2.memmove
void * memmove ( void * destination, const void * source, size_t num );
与memcpy函数功能和用法相同;都可以处理source内存块和destination内存块重叠的问题。
附上memmove库函数实现的代码;`
#include<stdio.h>
#include<Windows.h>
#include<assert.h>
void* my_memmove(void* dst, const void* src,size_t num)
{
void* ret = dst;
if (src >= dst || (char*)src + num < (char*)dst) {
while (num--) {
*(char*)dst = *(char

本文详细介绍了C语言中mem系列函数的使用方法及其特点,包括memcpy、memmove、memset和memcmp的功能、参数及应用场景,并提供了示例代码帮助理解。
最低0.47元/天 解锁文章
3691

被折叠的 条评论
为什么被折叠?



