strlen函数实现
原型: int strlen(const char *s);
作用:返回字符串的长度。
方法1:利用中间变量
int strlen(const char *s){
    int i=;
    while(s[i] != '\0'){
        i++;
    }
    return i;
}
方法2:利用指针
int strlen(const char *s){
    char *t=s;while(*s){
    s++;
  }
  return s-t;
}    
方法3:利用递归
int strlen(const char *s){
    if(s==NULL) return -;
    if(*s=='\0')  return ;
    return (+strlen(++s));
}
方法4:利用递归2
int strlen(const char *s){
    if(s==NULL)    return -;
    return    ('\0' != *s)?(+strlen(++s):;
}
方法5:利用中间变量2
int strlen(char s[])
{
int i;
while (s[i] != '\0')
++i;
return i;
}
strlen函数实现的更多相关文章
- [PHP源码阅读]strlen函数
		
文章来自:http://www.hoohack.me/2016/02/22/phps-source-analytics-strlen 我在github有对PHP源码更详细的注解.感兴趣的可以围观一下, ...
 - 不允许调用库函数,也不允许使用任何全局或局部变量编写strlen函数
		
不允许调用库函数,也不允许使用任何全局或局部变量编写strlen函数. 这是一道面试题,可以使用递归的方式解答,答案如下: #include <stdio.h> int mylen(cha ...
 - strlen函数
		
笔试题:不使用中间变量求const字符串长度,即实现求字符串长度库函数strlen函数.函数接口声明如下:int strlen(const char *p); http://soft.chinabyt ...
 - strlen() 函数
		
strlen() 函数通常用来计算字符串的长度,但是今天突然发现个奇怪的现象. 如下所示: #include <stdio.h> #include <stdlib.h> #in ...
 - C语言strlen函数和sizeof操作符
		
字符'x'于字符串"x"的区别 'x' 属于基本类型(char)字符类型-----------------由1个字符组成('x') "x"属于派生类型(char ...
 - C++ sizeof操作符的用法和strlen函数的区别
		
摘要:本人首先介绍了C++中sizeof操作符的用法和注意事项,其次对比了和strlen的区别和使用,方便大家在写代码的时候查阅,和面试.笔试的时候复习. 目录: sizeof的用法: sizeof和 ...
 - PHP strlen() 函数
		
定义和用法 strlen() 函数返回字符串的长度. 语法 strlen(string) 参数 描述 string 必需.规定要检查的字符串. 例子 <?php echo strlen(&quo ...
 - strnclmp和strlen函数的用法
		
一.strncmp 函数 函数原型: 1.函数原型:int strncmp (const char *s1, const char *s2, size_t n) 2.头文件: <string. ...
 - 编写一个程序实现strlen函数的功能
		
写自己的 strlen 函数-----→ mystrlen #include <stdio.h> #include <string.h> #define N 100 int m ...
 - C语言::模拟实现strlen函数
		
题目要求 编写一个C语言程序模拟实现strlen函数. 算法 strlen函数功能是计算字符串中字符的个数.(除\0外) 而字符串本身就是一个字符数组,只不过末尾以\0结束. 因此,我们只需遍历除\0 ...
 
随机推荐
- JSON Bean 相互转换工具(效率是Gson的两倍以上)
			
本帖最后由 xuehuayous 于 2015-12-24 08:44 编辑 前几天想封装一个自定义控件,用到Json解析,以前都使用Gson来解析Json数据的,但是想到一个简单的自定义控件就没必要 ...
 - Ubuntu下Wine使用教程
			
转自:http://blog.csdn.net/wangchangshuai0010/article/details/12057251 用了段时间的Ubuntu,感觉很好!可是工作的时候还是要用到 w ...
 - mongo 误操作恢复数据
			
场景:我往同一个集合里面插入 三条数据 aa:aa bb:bb cc:cc .后来我后悔了,不想插入 bb:bb,通过oplog重放过滤好 bb:bb这条数据. 原理: 1.通过 oplog.r ...
 - requests.exceptions.SSLError: hostname '127.0.0.1' doesn't match None
			
http://stackoverflow.com/questions/33429453/python-requests-ssl-hostname-doesnt-match-error http://w ...
 - [Todo]Redis & Mysql可以看的书籍
			
Redis实战(我下的版本是网络版,还有一版是黄健宏翻译的版本,正在找) 高性能Mysql第三版 都在目录: /Users/baidu/Documents/Data/Interview/存储-Nosq ...
 - ubuntu 安装ODOO时的python的依赖
			
sudo apt-get install graphviz ghostscript postgresql-client python-dateutil python-feedparser python ...
 - RTP/RTCP、TCP、UDP、RTMP、RTSP
			
OSI中的层 功能 TCP/IP协议族 应用层 文件传输,电子邮件,文件服务,虚拟终端 TFTP,FTP,HTTP,SNMP,SMTP,DNS,RIP,Telnet 表示层 数据格式化,代码转换,数据 ...
 - 利用pycharm进行重构学习记录
			
pycharm是非常强大的pythonIDE,集成了很多实用的功能,其中就包括重构Refactor 记录下使用pycharm的重构 pycharm的Refactor默认在主菜单上就有了 Refacto ...
 - (转)Android技术积累:图片缓存管理
			
如果每次加载同一张图片都要从网络获取,那代价实在太大了.所以同一张图片只要从网络获取一次就够了,然后在本地缓存起来,之后加载同一张图片时就从缓存中加载就可以了.从内存缓存读取图片是最快的,但是因为内存 ...
 - weblogic基本安装部署
			
1.3.1 安装WebLogic10(1) <JavaEE程序设计与应用开发>第1章JavaEE介绍和环境配置,本章首先介绍了JavaEE的基本理论,然后对本书将要使用的软件:JDK.服务 ...