探讨:编写strlen函数

zhangqingma 2008-07-08 04:42:20
加精
我有一次在面试时遇到这样一个问题:不允许调用库函数,也不允许使用任何全局或局部变量编写 int strlen(char *strDest); 当时我没有写出来,是否有点搞人??

废人点评:看看下面有多少人没看清题目就发言了。
...全文
8470 323 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
323 条回复
切换为时间正序
请发表友善的回复…
发表回复
BCabbage 2012-02-18
  • 打赏
  • 举报
回复
引用 10 楼 newerC 的回复:

C/C++ code
int MyLen(char *srcDest){
if(!*srcDest) return 0 ;
return 1+MyLen(++srcDest);
}


不错
zjw520wy 2011-12-16
  • 打赏
  • 举报
回复
顶8楼和56楼
Zach7 2011-12-07
  • 打赏
  • 举报
回复
用指针相减
bcypxl 2011-11-20
  • 打赏
  • 举报
回复
受教了!
li3208 2011-08-19
  • 打赏
  • 举报
回复
mark
Sapo 2011-08-10
  • 打赏
  • 举报
回复
int strlen(char * str)
{
if(*str)
{
return 1 + strlen(str+1);
}
else
{
return 0;
}
}
sczvip 2011-08-05
  • 打赏
  • 举报
回复
确实 10楼的代码受益了
delphiwcdj 2010-10-31
  • 打赏
  • 举报
回复
留名!
我们编程吧 2010-08-23
  • 打赏
  • 举报
回复
直接指针就可以了!!
楼上有N多人留贴了哈!!
koberichard_1 2010-08-19
  • 打赏
  • 举报
回复

int strlen(char *string)
{
int length=0;
while(*string++!=EOF)
++length;
return length;
}
jorien 2010-06-27
  • 打赏
  • 举报
回复
[Quote=引用 110 楼 kenshu 的回复:]

千万不要笑,千万!如果您想笑,想清楚了再说.

int my_strlen( const char* s ) {
if (s[0]==0) return 0;
if (s[1]==0) return 1;
if (s[2]==0) return 2;
if (s[3]==0) return 3;
if (s[4]==0) return 4;
i……
[/Quote]

这样真的高效率吗?请强人回答
guishenlong 2010-02-24
  • 打赏
  • 举报
回复
msrk


回复内容太短了
zjkl19 2010-02-08
  • 打赏
  • 举报
回复
CSDN的高手太多了,我也要好好努力了~
asdwdg 2009-11-26
  • 打赏
  • 举报
回复
10楼厉害!学习了!
Eid 2009-10-07
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 pustian 的回复:]
int strlen(char *strDest){
    if(! *strDest) return 0;
    else return 1+strlen(++strDest);
}
[/Quote]
经典。。。
长山的随笔 2009-10-07
  • 打赏
  • 举报
回复
慎用递归。
这是哪家公司的面试题啊!有点小伎俩的意思。
avSouth 2009-10-06
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 mlee79 的回复:]
这个好像很无聊的说 ...

int strlen( const char* s )
{
return *s?1+strlen(s+1):0;
}
[/Quote]

return *s?1+strlen(s+1):0;
保留了原指针的值不变———
fallening 2009-10-06
  • 打赏
  • 举报
回复
楼下的都木有小唧唧
fallening 2009-10-06
  • 打赏
  • 举报
回复
TNND,不挖坟行不行?????????????
SARA520 2009-10-06
  • 打赏
  • 举报
回复
学习了
加载更多回复(303)

70,020

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧