多种方式实现strlen

Posted 凩子

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了多种方式实现strlen相关的知识,希望对你有一定的参考价值。

多种方式实现strlen

归纳一下学过的不同方法来实现strlen。

//模拟函数实现strlen
#include <stdio.h>
#include<assert.h>
int my_strlen(const char* str)

    assert(str!=NULL);
	int count = 0;
	while (*str != '\\0')
	
		count++;
		str++;
	
	return count;

int main()

	char arr[50] = "hdfbaadk";
	int len = my_strlen(arr);
	printf("%d\\n", len);
	return 0;

//递归实现strlen
//算hdfbaadk的个数可以先算dfbaadk的个数
//同理逐渐的减少可以算出k的个数即一个,再回过去即是字符串长度
int my_strlen(char* str)

	if (*str != '\\0')
		return 1 + my_strlen(str + 1);
	else
		return 0;

int main()

	char arr[50] = "hdfbaadk";
	int len = my_strlen(arr);
	printf("%d\\n", len);
	return 0;

//指针—指针型实现strlen(指针-指针得到的是两地址之间元素的个数)
int my_strlen(char* str)

	char* start = str;
	while (*str != '\\0')
	
		str++;//‘\\0’和首元素之间的个数即为所求
	
	return str - start;//该类型只适用于两个指针指向同一个连续空间的时候

int main()

	char arr[50] = "hdfbaadk";
	int len = my_strlen(arr);
	printf("%d\\n", len);
	return 0;

以上是关于多种方式实现strlen的主要内容,如果未能解决你的问题,请参考以下文章

多种方式实现AOP

android-多种方式实现主界面的Tab

IOC和AOP使用扩展 多种方式实现依赖注入

多种写法

Python 列表嵌套多种实现方式

django实现多种支付并发订单处理