1. 程式人生 > >四種方法計算字串的長度

四種方法計算字串的長度

在這裡我提供四種方法計算字串的長度:

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