C程序设计 模拟实现一个strlen函数 递归

模拟实现一个strlen函数

#include<stdio.h>
#include<string.h>
//法1
int my_length(char* str)
{
	int count = 0;
	while ('\0'!= *str)
	{
		count++;
		str++;
	}
	return count;
}
//法2
int my_length(char* str)
{
	if (*str != '\0')
	{
		return 1 + my_length(str + 1);
	}
	else return 0;
}
int main()
{
	char arr[] = "dhaskfhalhf";
	int len = my_length(arr);//arr是数组,数组传参,传的不是数组,而是数组的首个元素的地址
	printf("len=%d\n", len);
	return 0;
}

结果:
在这里插入图片描述


版权声明:本文为kris_paul原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。