Locations of visitors to this page

You Are Not Prepared!!

It won't kill you to make you stronger!

由strcpy想到的一个小问题

关于这个strcpy,经历过笔试的人都知道---实在是太频繁了。

以前都是直接写网上的标准答案,昨天忽然想起来这个函数却又忘了网上怎么写的,只好自己动手写了写,还真发现点问题。

代码及问题如下

char* strcpy(char* dst, const char* src)
{
      if( !dst || !src)
         return null;
      char* p = dst;
      while( *p++ = *src++) // 问题就在这儿,
            ;
      return dst;
}

网上一般都是写的 while((*p++ = *src++) != '\0') ,以前抄习惯了,也没注意可还可以再简化为上面的写法。直接利用等号表达式的返回值来进行条件判断(到字符串末尾时'\0'被复制之后等号表达式的返回值也为\0即0也就是false来跳出循环)。

posted on 2013-03-22 09:37 NWAO 阅读(159) 评论(0)  编辑 收藏 引用 所属分类: 精进持戒


只有注册用户登录后才能发表评论。
【推荐】超50万行VC++源码: 大型组态工控、电力仿真CAD与GIS源码库
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理


公告

“你个近视眼为啥还不戴眼镜?” “世界这么污浊,我看那么清楚干什么。”

导航

<2019年6月>
2627282930311
2345678
9101112131415
16171819202122
23242526272829
30123456

统计

常用链接

留言簿

随笔分类

随笔档案

MY FRIENDS

搜索

积分与排名

最新评论

阅读排行榜

评论排行榜