文档章节

一个字符串,不用循环,不用库函数,求长度

余青木
 余青木
发布于 2015/06/16 21:24
字数 143
阅读 698
收藏 8
/*
法一:传入长度做参数
*/
int strlen_x(const char * pstr,int &len)
{
	
	char * pTemp = (char*)pstr;
	if (*pstr == '\0')
		return len;
	len++;
	pTemp = pTemp++;
	return strlen_x(pTemp, len);

}

/*
法二
不传入长度参数
http://blog.csdn.net/stpeace/article/details/8096629
*/
int GetstrLen(char * pstr)
{

	return *pstr ? GetstrLen(pstr + 1) + 1 : 0;
}



int _tmain(int argc, _TCHAR* argv[])
{

	char *pstr = "sadfjqaj";
	int len = strlen(pstr);
	printf("strlen = %d\n",len);
	len = 0;
	len = strlen_x(pstr, len);
	printf("strlen_x = %d\n", len);

	len = GetstrLen(pstr);
	printf("GetstrLen = %d\n", len);
	return 0;
}

两种写法思路一致,实现上我的第一种稍微麻烦了点

© 著作权归作者所有

共有 人打赏支持
余青木
粉丝 2
博文 20
码字总数 6510
作品 0
拉萨
加载中

评论(2)

余青木
余青木

引用来自“ishakin”的评论

说好的不用递归呢。。。。3
不好意思,打错了,是不用循环和库函数
i
ishakin
说好的不用递归呢。。。。3
Python3 初学实践案例(1)按条件生成复杂密码

Python3 初学实践案例(1)按条件生成复杂密码 最近事情太多, 学的东西忘记得差不多了。想想不如学习一下 吧~,反正我是一前端,学任何一门后端语言都是有助于自己的学习的。 最关键的事情是...

FungLeo
2017/12/08
0
0
如何在 JS 代码中消灭 for 循环

这篇文章基于我在公司内部分享会整理而成。欢迎探讨补充。 一,用好 filter,map,和其它 ES6 新增的高阶遍历函数 问题一: 将数组中的空值去除 答案: 问题二: 将数组中的 VIP 用户余额加 ...

leihuang
07/27
0
0
[算法总结] 13 道题搞定 BAT 面试——字符串

本文首发于我的个人博客:尾尾部落 1. KMP 算法 谈到字符串问题,不得不提的就是 KMP 算法,它是用来解决字符串查找的问题,可以在一个字符串(S)中查找一个子串(W)出现的位置。KMP 算法把...

繁著
09/05
0
0
最长回文子串与Manacher算法

题目描述 给定一个字符串,求它的最长回文子串的长度。 最简单粗暴的方法就是,枚举全部的字符串,然后每个都判断一下是不是回文,然后得到长度最长的字符串。显然,这个方法是可行的,可是也...

yejq8
2015/05/16
0
0
第八次课:Python缩进、语句

在谈到语句之前,要简要说下Python的缩进。对于Python而言代码缩进是一种语法,Python没有像其他语言一样采用{}或者begin...end分隔代码块,而是采用代码缩进和冒号来区分代码之间的层次。缩...

dyqd2011
2017/10/25
0
0

没有更多内容

加载失败,请刷新页面

加载更多

WinDbg

参考来自:http://www.cnit.net.cn/?id=225 SRV*C:\Symbols*http://msdl.microsoft.com/download/symbols ctrl + d to open dump_file Microsoft (R) Windows Debugger Version 6.12.0002.633......

xueyuse0012
今天
2
0
OSChina 周五乱弹 —— 想不想把92年的萝莉退货

Osc乱弹歌单(2018)请戳(这里) 【今日歌曲】 @罗马的王:分享松澤由美的单曲《地球ぎ》 很久没看圣斗士星矢了 《地球ぎ》- 松澤由美 手机党少年们想听歌,请使劲儿戳(这里) @开源中国首...

小小编辑
今天
13
1
springBoot条件配置

本篇介绍下,如何通过springboot的条件配置,控制Bean的创建 介绍下开发环境 JDK版本1.8 springboot版本是1.5.2 开发工具为 intellij idea(2018.2) 开发环境为 15款MacBook Pro 前言 很多时候,...

贺小五
今天
1
0
javascript source map 的使用

之前发现VS.NET会为压缩的js文添加一个与文件名同名的.map文件,一直没有搞懂他是用来做什么的,直接删除掉运行时浏览器又会报错,后来google了一直才真正搞懂了这个小小的map文件背后的巨大...

粒子数反转
昨天
1
0
谈谈如何学Linux和它在如今社会的影响

昨天,还在农耕脑力社会,今天已经人工智能技术、大数据、信息技术的科技社会了,高速开展并迅速浸透到当今科技社会的各个方面,Linux日益成为人们信息时代的到来,更加考验我们对信息的处理程...

linux-tao
昨天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部