免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: HopeCao
打印 上一主题 下一主题

出现频率最高的笔试题strcpy写法 [复制链接]

论坛徽章:
0
81 [报告]
发表于 2011-01-22 20:27 |只看该作者
这题面试必考哇。。

论坛徽章:
0
82 [报告]
发表于 2011-01-23 11:05 |只看该作者
mark!!

论坛徽章:
0
83 [报告]
发表于 2011-01-25 15:30 |只看该作者
这样实现不知能否符合要求?



  1. char * mystrcpy(char  * dest,char const * src){
  2.         
  3.         if(strlen(dest)<strlen(src)){
  4.                 char * p =         (char*)realloc(dest,sizeof(char)*strlen(src));
  5.                 if(p){
  6.                         dest = p;
  7.                 }else{
  8.                         return NULL;
  9.                 }
  10.         }
  11.         char * re  = dest;
  12.         while(*src){
  13.                 *dest++=*src++;
  14.         }
  15.         *(dest+1) = 0;
  16.         return re;
  17. }
复制代码

论坛徽章:
0
84 [报告]
发表于 2011-01-26 09:30 |只看该作者
{:3_200:}

论坛徽章:
0
85 [报告]
发表于 2011-01-26 13:41 |只看该作者
精辟,想想还真是面试老是遇到考这种题的公司。

不做笔试好多年。。{:3_192:}

论坛徽章:
0
86 [报告]
发表于 2011-01-29 19:10 |只看该作者
哈哈,throw "Invalid argument(s)"; 小小地惊了俺一下

论坛徽章:
0
87 [报告]
发表于 2011-01-29 21:56 |只看该作者
char *head =dst;
while (*dst++ = *src ++)
    ;
return head;

楼主是瞎评。   什么不检查输入之类 ...
zhangsuozhu 发表于 2011-01-20 17:51


你的解释是50步笑100步...

这里不检查传入参数合法性的真正原因是:查了也没用,因为用户态代码基本上无法检查指针参数的合法性

论坛徽章:
0
88 [报告]
发表于 2011-01-30 09:43 |只看该作者
讨论很精彩,留个记号。
这里确实是个看到了设计方法的问题。怎么没人提到strncpy() BTW :-)

论坛徽章:
0
89 [报告]
发表于 2011-02-10 10:46 |只看该作者
不错!

论坛徽章:
3
2015年迎新春徽章
日期:2015-03-04 09:56:11数据库技术版块每日发帖之星
日期:2016-08-03 06:20:00数据库技术版块每日发帖之星
日期:2016-08-04 06:20:00
90 [报告]
发表于 2011-02-10 13:38 |只看该作者
垃圾题目
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP