strcpy函数解析

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

 

(1)源字符串加const,表明其为输入输入参数,防止被修改。

(2)assert断言,防止出现空指针。

(3)while循环就是一个一个字符的复制,遇到'\0'即停止复制。

(4)在代码中还声明了目的地址的指针,最后返回,目的是为了可以实现链式操作,如strlen(strcpy(a,b))。

posted @ 2019-02-26 15:50  Kayden_Cheung  阅读(330)  评论(0编辑  收藏  举报
//目录