破开C语言暗夜的第十道光 —— 内存函数

前言

  本文仅是对常见一点的内存函数进行通俗化解释和相关注意点的提醒,函数的具体使用演示可通过下方链接自行学习: C语言库函数查找

memcpy函数

内存函数的优点:内存函数可以适用于处理任意类型的数据。

memcpy函数:不重叠的两块内存空间的拷贝,从源空间复制num个字节的数据到目标空间。

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

参数:第一个参数传目标空间变量,第二个参数传源空间变量,第三个参数传要拷贝数据的字节数。
返回值:返回目标空间变量,适使用情景决定用什么类型的指针来接收数据。

【注】:memcpy函数在遇到 ‘\0’ 的时候并不会停下来。

memmove函数

memmove函数:不重叠和重叠的内存空间都可以拷贝,其余与memcpy函数完全一样,传的参数都一样。

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

【注】:和memcpy的差别就是memmove函数处理的源内存块和目标内存块是可以重叠的。

memcmp函数

memcmp函数:内存比较函数,从前往后依次比较从ptr1和ptr2指针开始的num个字节

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

参数:第一个参数传目标空间变量,第二个参数传源空间变量,第三个参数传要比较的数据的字节数。
返回值:

 若 ptr1 > ptr2,返回 大于0 的整数
 若 ptr1 = ptr2,返回 0
 若 ptr1 < ptr2,返回 小于0 的整数

memset函数

memset函数:以字节为单位设置内存中数据。

 void* memset( void* ptr, int value, size_t num );

参数:第一个参数传的要设置的那块内存的首地址,第二个参数传的是内存中每个字节要设置的值,第三个参数传的是要设置的字节数量。
返回值:返回 ptr(该空间的首地址)。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

遥逖

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值