C語言多種獲取字符串長度的方法

在C語言中,想要獲取字符串長度可以有很多方法,下面分別介紹

一、使用sizeof()運算符

在C語言中,sizeof() 是長度的運算符,括號中可以放入數據類型或者表達式,一般我們用來計算字符串長度。

基本用法:

int i=10;
sizeof(i);//表達式

char str[]="hello world";
sizeof(str);

sizeof(double);//數據類型

在使用sizeof()求字符串長度時,會將 ‘\0′ 也計算到字符串長度中。例如”abcd”用sizeof()求長度會計算得到5。
註意:char str[100]=””; sizeof(str)的值是100。

二、使用strlen函數

在string.h中提供瞭計算字符串長度的函數。

語法:

size_t strlen(const char *str);

在使用strlen函數時,需要添加string.h頭文件,該函數會將字符串長度計算出,不包含 ‘\0’。

三、編寫函數

如果不想使用sizeof()和strlen(),可以利用循環來判斷字符串的長度。

int get_length(char str[])
{
	char *p = str;
	int count = 0;
	while (*p++ != '\0')
	{
		count++;
	}
	return count;
}

該函數通過傳入一個字符串,返回一個長度數值。

測試代碼:

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

int get_length(char str[])
{
	char *p = str;
	int count = 0;
	while (*p++ != '\0')
	{
		count++;
	}
	return count;
}

int main()
{
	char str[] = "abcd";
	int count1 = sizeof(str);
	int count2 = strlen(str);
	int count3 = get_length(str);
	printf("use sizeof the length is %d\n", count1);
	printf("use strlen the length is %d\n", count2);
	printf("use get_length the length is %d\n", count3);
	return 0;
}

結果:

在這裡插入圖片描述

到此這篇關於C語言多種獲取字符串長度的方法的文章就介紹到這瞭,更多相關C語言獲取字符串長度內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!

推薦閱讀: