设计函数模拟strlen函数实现字符串长度计算的三种方法

一、strlen函数本身是计算字符串长度的大小,返回值是无符号的整型,而结束的标志是'\0',测量的是'\0'之前字符的个数,清楚strlen的主要特征,接下来开始模拟实现 

0、主函数的代码

二、计数模拟实现:

ch++,移动的是其指向类型的的大小,也就是char类型。又知道数组在内存中存储的地址是连续的,所以每次++,指针代表下一个字符的地址,当指针指向'\0'时,结束循环。此时count的值即为字符个数。

三、函数递归实现:

用递归计算字符个数是,递归几次则代表有几个字符。递归的终止条件也是‘/0’,递归过程如下,是不是有点大事化小的感觉?,这里递归了8次,去掉\0,结果是7

 五、指针向减实现

 s指针,指向字符串第一个字符,p指针指向字符串最后一个字符,则指针相减,得到的就是,这俩指针之间的字符个数。

五、最后我们来看下结果:

 这三种方法,模拟实现的函数strlen,结果相同

 

  • 9
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值