内存 *** 作函数实现(1)

内存 *** 作函数实现(1),第1张

内存 *** 作函数实现(1) 什么是内存 *** 作函数?

就是一些能 *** 作计算机内存的C语言内置函数。

1. memcpy

函数原型:

void * memcpy ( void * destination, const void * source, size_t num );

参数说明:

destination

指向要复制内容的目标数组的指针类型转换为类型指针。

source

指向要复制的数据源的指针,输入类型为数据源类型的指针。

num

要复制的字节数。
size_t表示无符号整型。

代码实现如下:

void* my_memcpy(void* dest, const void* resu, size_t num)
{
	assert(dest && resu);//空指针判断
	while (num--)
	{
		*(char*) dest = *(char*)resu;
		dest = (char*)dest + 1;
		resu = (char*)resu + 1;
	}
}
2. memcmp

函数原型:

int memcmp ( const void * ptr1, const void * ptr2, size_t num );

代码实现如下:

int my_memcmp(const void* ptr1, const void* ptr2, size_t num)
{
    assert(ptr1&&ptr2);
	int res = 0;
	while (num--)
	{
		res = *(char*)ptr1 - *(char*)ptr2;
		if (res!=0)
			return res;
		ptr1 = (char*)ptr1 + 1;
		ptr2 = (char*)ptr2 + 1;
	}
	return res;
}

欢迎分享,转载请注明来源:内存溢出

原文地址:https://www.54852.com/zaji/5711279.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-12-17
下一篇2022-12-17

发表评论

登录后才能评论

评论列表(0条)

    保存