首页 > 编程语言 > 详细

一起talk C栗子吧(第六十七回:C语言实例--DIY字符串长度函数)

时间:2015-11-29 09:27:37      阅读:284      评论:0      收藏:0      [点我收藏+]

各位看官们,大家好,上一回中咱们说的是DIY字符串比较函数的例子,这一回咱们说的例子是:DIY字符串长度函数。闲话休提,言归正转。让我们一起talk C栗子吧!

我们在前面的章回中没有专门介绍过字符串长度函数,只是简单提了几句。不过在实际工作中经常使用它计算字符串的长度,使用时只需要注意它不把字符串的小尾巴看作字符串的内容,也就是说不计算小尾巴的长度。今天让我们一起DIY字符串长度函数:strlen。 Just do it by yourself!

DIY strlen函数

int diy_strlen(const char *s1)

  • 1.判断字符串s1是否是空串,如果是空串,那么返回0;如果不是,进入下一步;
  • 2.从字符串的第一个字符开始,依次统计字符串中字符的数量,直到遇到字符串的小尾巴为止;
  • 3.返回步骤2中统计的数量;

下面是我写的代码,请大家参考:

int diy_strlen(const char *s1)
{
    int len = 0;

    if(NULL == s1)
        return 0;

    while(*s1 != ‘\0‘)
    {
        s1++;
        len++;
    }

    return len;
}

下面是标准库中strlen函数的代码,请大家和我们DIY的代码进行比较:

/**
 * strlen - Find the length of a string
 * @s: The string to be sized
 */
size_t strlen(const char *s)
{
        const char *sc;

        for (sc = s; *sc != ‘\0‘; ++sc)
                /* nothing */;
        return sc - s;
}

通过对比,大家可以发现,标准库提供的代码和我们DIY的代码不一样。标准库使用指针的差值做为长度,我们使用了单独的变量来统计长度,不过它们的计算思路是一样的。希望大家能够掌握。

各位看官,关于DIY字符串长度函数的例子咱们就说到这里。欲知后面还有什么例子,且听下回分解。


一起talk C栗子吧(第六十七回:C语言实例--DIY字符串长度函数)

原文:http://blog.csdn.net/talk_8/article/details/50094031

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!