memcpy 结构体拷贝_strcpy与memcpy

47665df2253c59ca9f742b371a34bdfd.png

目录

一、strcpy的代码实现

二、为什么要返回char *?

三、假如考虑dst和src内存重叠的情况,strcpy该怎么实现

四、strcpy和memcpy

五、memcpy和memove


已知strcpy的原型是char * strcpy(char *strDest, const char *strSrc);

(1)实现strcpy函数

(2)解释为什么要返回char*

(3)假如考虑strDest和strSrc内存重叠的情况,strcpy该怎么实现

一、strcpy的代码实现

char * strcpy(char *strDest, const char *strSrc) 
{
    
    assert((strDest != NULL) || (strSrc != NULL));  
 char *address = strDest;					
 while((*strDest++ = *strSrc++)!='0');		
 return address;
}

注意:strDest和strSrc是形参作用域和生命周期仅限于函数体内,虽然*strDest++ = *strSrc++ 一直加

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值