strlen函数实现的两种方法
2015-08-04 18:32
351 查看
strlen函数实现的两种方法
①使用变量(在函数中定义变量来计算字符串的长度)
#include <stdio.h>
int mystrlen(const char *p)
{
int sum = 0;
while(*p)
{
sum++;
p++;
}
return sum;
/*或者
char *tem = p;
while(*p++);
return p-tem;
*/
}
int main()
{
char *p = "";
printf("%d\n", mystrlen(p));
}
②不使用函数且不在函数中定义变量(编程思想:递归)
#include <stdio.h>
int mystrlen(const char *p)
{
if(*p == 0)return;
return mystrlen(p+1)+1;
}
int main()
{
printf("%d\n", mystrlen("asdfsdfasdsdf"));
}
当然如果要求仅为不能定义变量,还可以使用库函数中的strlen函数进行计算。
①使用变量(在函数中定义变量来计算字符串的长度)
#include <stdio.h>
int mystrlen(const char *p)
{
int sum = 0;
while(*p)
{
sum++;
p++;
}
return sum;
/*或者
char *tem = p;
while(*p++);
return p-tem;
*/
}
int main()
{
char *p = "";
printf("%d\n", mystrlen(p));
}
②不使用函数且不在函数中定义变量(编程思想:递归)
#include <stdio.h>
int mystrlen(const char *p)
{
if(*p == 0)return;
return mystrlen(p+1)+1;
}
int main()
{
printf("%d\n", mystrlen("asdfsdfasdsdf"));
}
当然如果要求仅为不能定义变量,还可以使用库函数中的strlen函数进行计算。
相关文章推荐
- Lua和C语言的交互详解
- 关于C语言中参数的传值问题
- 深入C++中API的问题详解
- 基于C语言string函数的详解
- C语言内存对齐实例详解
- c语言实现的带通配符匹配算法
- C语言实现顺序表基本操作汇总
- 探讨C语言的那些小秘密之断言
- C语言实现BMP转换JPG的方法
- 深入探讨C语言中局部变量与全局变量在内存中的存放位置
- C语言查找数组里数字重复次数的方法
- C语言泛型编程实例教程
- C语言中使用lex统计文本文件字符数
- C语言进制转换代码分享
- 基于C语言fflush()函数的使用详解
- C语言单链队列的表示与实现实例详解
- 关于C语言除0引发的思考
- 深入分析C中不安全的sprintf与strcpy
- Lua教程(四):在Lua中调用C语言、C++的函数
- C语言求幂计算的高效解法