⑴ 如何在c語言中計算字元串長度

C語言的字元串是由來字元數組形式保源存的,並約定''(ascii碼值為0)作為字元串結束符。其長度為從字元串開始,到''結束,所有字元的個數,不包括''本身。

要獲得字元串長度,有兩種方法可以使用,使用庫函數strlen()。strlen聲明在string.h中,原型為int strlen(char *str);功能為求str的長度,並返回。對於字元串str, 可以用代碼求長度。當str[len]為0時,退出循環,退出後的len值就是str的長度。

拓展資料:使用strlen函數,包含在頭文件string.h里,功能就是計算字元串s的(unsigned int型)不包括''在內的長度。

⑵ c語言中如何求數組長度

比如說是int類型的數組, 數組為 int arr[ ]={3,5,6,5,......}

計算數組中元素個數的方法為,求出總數組大小回,答除以每個元素的大小,就得出元素的個數。

個數= sizeof(arr) / sizeof(int)

注意: 這里的arr單獨出現的話代表的是整個數組,不是首地址。

若想讓它代表首地址, 用arr+0即可, 比如求首地址的大小, 其實就是指針的大小4,

sizeof(arr+0) 結果肯定是4. 不信你自己cout輸出測試下。

同理,無論什麼類型的數組,都用這種方法

sizeof(首指針) / sizeof(類型)

⑶ c語言怎麼獲取數組的長度,

c語言中,定義數組後可以用sizeof命令獲得數組的長度(可容納元素個數)

如:

{
intdata[4];
intlength;
length=sizeof(data)/sizeof(data[0]);//數組占內存總空間,除以單個元素占內存空間大小
printf("lengthofdata[4]=%d",length);//輸出lengthofdata[4]=4
}

但,通過傳遞數組名參數到子函數中,以獲得數組長度是不可行的。如:

intgetLength(int[]a){
intlength;
length=sizeof(a)/sizeof(a[0]);//這樣是錯誤的,得到的結果永遠是1
returnlength;
}
因為,a是函數參數,到了本函數中,a只是一個指針(地址,系統在本函數運行時,是不知道a所表示的地址有多大的數據存儲空間,這里只是告訴函數:一個數據存儲空間首地址),所以,sizoef(a)的結果是指針變數a占內存的大小,一般在32位機上是4個位元組。a[0]是int類型,sizeof(a[0])也是4個位元組,所以,結果永遠是1。

因此,獲得數組長度,只能在數組定義所在的代碼區中,採用以上方法,才可以達到效果。

⑷ c語言怎麼獲取數組的長度

c語言提供三種定義數組的方式:

第一種:

int arr[5]={1,2,3,4,5};

第二種:

int arr[5];

arr[0]=1;

arr[1]=2;

....

arr[4]=5;

第三種:

int arr[]={1,2,3,4,5,6};

拓展資料

C語言是一門通用計算機編程語言,應用廣泛。C語言的設計目標是提供一種能以簡易的方式編譯、處理低級存儲器、產生少量的機器碼以及不需要任何運行環境支持便能運行的編程語言。

盡管C語言提供了許多低級處理的功能,但仍然保持著良好跨平台的特性,以一個標准規格寫出的C語言程序可在許多電腦平台上進行編譯,甚至包含一些嵌入式處理器(單片機或稱MCU)以及超級電腦等作業平台。



⑸ c語言獲得數組的長度

1、c語言中,定義數組後可以用sizeof命令獲得數組的長度(可容納元素個數)。
例如:
double a[] = {1,2,3,4};
int length;
length=sizeof(a)/sizeof(a[0]); //數組占內存總空間,除以單個元素占內存空間大小
printf(「length of a=%d」, length ); //輸出length of a=4
2、但是,通過傳遞數組名參數到子函數中,以獲得數組長度是不可行的。
例如:
int getLength(int a[]){
int length;
length=sizeof(a)/sizeof(a[0]); //這樣是錯誤的,得到的結果永遠是1
return length;
}
因為,a是函數參數,到了本函數中,a只是一個指針(地址,系統在本函數運行時,是不知道a所表示的地址有多大的數據存儲空間,這里只是告訴函數:一個數據存儲空間首地址),所以,sizoef(a)的結果是指針變數a占內存的大小,一般在32位機上是4個位元組。a[0]是int類型,sizeof(a[0])也是4個位元組,所以,結果永遠是1。
3、因此,獲得數組長度,只能在數組定義所在的代碼區中,採用以上方法,才可以達到效果