四种方法计算字符串的长度

在这里我提供四种方法计算字符串的长度:

1.使用递归函数。

2.数数,从第一个字符开始数数,没遇到一个字符,长度加一,直到遇到"\0",停止数数。

3.使用strlen函数,使用此函数时,需包含头文件# include <string.h>  

4.使用sizeof,对于字符串,一定要减去1,因为字符数组的末尾有一个"\0",size=sizeof(str)/sizeof(str[0])

完整代码入下:

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

int strlen_1(char  str[])
{
	if (str[0]=='\0')
	{
		return 0;
	}
	return strlen_1(str + 1) + 1;
}

int main()
{
	 char str[] = "abcde";

	 //第一种方法,使用递归
	 int ret ;
	 ret = strlen_1(str);
	 printf("%d\n", ret);

	 //第二种方法,数数
	 int strlen_2=0;
	 while (str [strlen_2]!= '\0')
		 strlen_2++;
	 printf("%d\n", strlen_2);

	 //第三种方法,调用strlen函数
	 int strlen_3 =strlen(str);
	 printf("%d\n", strlen_3);

	 //第四种方法,使用sizeof
	 int strlen_4 = sizeof(str) / sizeof(str[0]) - 1;
	 printf("%d\n", strlen_4);
	 system("pause");
	 return 0;
}

打印结果均为5

猜你喜欢

转载自blog.csdn.net/qq_41158320/article/details/83994407