(面试题的四种答案)重写strcpy库函数..看不懂

代码库 代码库 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
下面是四种写法,四种写法的质量依次增强,能解释下这四种写法吗???
第一种:
void strcpy( char *strDest, char *strSrc )
{
  while( (*strDest++ = * strSrc++) != ‘\0’ );
}
 

第二种:
void strcpy( char *strDest, const char *strSrc )
{
  while( (*strDest++ = * strSrc++) != ‘\0’ );
}
  

第三种:
void strcpy(char *strDest, const char *strSrc)
{
  assert( (strDest != NULL) && (strSrc != NULL) );
  while( (*strDest++ = * strSrc++) != ‘\0’ );
}
  


第四种:
char * strcpy( char *strDest, const char *strSrc )
{
 assert( (strDest != NULL) && (strSrc != NULL) );
 char *address = strDest;
 while( (*strDest++ = * strSrc++) != ‘\0’ );
  return address;
}

这是C C++程序员面试的题目,作者对四种不同的答案进行了评价.......
...全文
评论 18
收藏 已收藏
分享
返回顶部
代码库
C语言 70,039 成员 243,237 内容