C语言内存函数

1.memcpy使用和模拟实现

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

                                            目标空间的地址        源空间的地址    被拷贝的字符个数

返回的是目标空间的起始地址

1)不确定拷贝的是什么类型的数据,用void*,void* 的指针不能直接运算,无具体类型的指针

2)函数memcpy从source的位置开始向后复制num个字节的数据到destination指向的内存位置

3)这个函数遇到 \0 的时候不会停下来

4)memory函数不负责重叠内存的拷贝,只负责不重叠的内存

非要负责重叠内存的拷贝,结果是未定义的

使用

2.memmove的使用和模拟实现

memmove处理的源内存块和目标内存块是可以重叠的

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

使用

3.memset函数的使用

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

是用来设置内存的,将内存中的值以字节为单位设置成想要的内容

使用

4.memcmp 函数的使用

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

比较从ptr1和ptr2指针指向的位置开始,向后的num个字节

使用

<0

0

>0

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值