中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

在C語言中獲取數組長度的方法有哪些

發布時間:2021-01-29 14:44:23 來源:億速云 閱讀:291 作者:Leah 欄目:開發技術

本篇文章給大家分享的是有關在C語言中獲取數組長度的方法有哪些,小編覺得挺實用的,因此分享給大家學習,希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。

使用關鍵字 sizeof。

前面說過,用 sizeof 可以獲得數據類型或變量在內存中所占的字節數。同樣,用 sizeof 也可以獲得整個數組在內存中所占的字節數。因為數組中每個元素的類型都是一樣的,在內存中所占的字節數都是相同的,所以總的字節數除以一個元素所占的字節數就是數組的長度。

那么如何用 sizeof 獲得數組總的字節數呢?只要對數組名使用 sizeof,求出的就是該數組總的字節數。下面寫一個程序看一下:

# include <stdio.h>
int main(void)
{  
  int a[10] = {0};
  printf("sizeof(a) = %d\n", sizeof(a));
  return 0;
}

輸出結果是:
sizeof(a) = 40

數組 a 是 int 型的,每個元素占 4 字節,所以長度為 10 的數組在內存中所占的字節數就是 40。而總的字節數除以一個元素所占的字節數就是數組的長度,如下面這個程序:

# include <stdio.h>
int main(void)
{  
  int a[10] = {0};
  int cnt = sizeof(a) / sizeof(a[0]);
  printf("cnt = %d\n", cnt);
  return 0;
}

輸出結果是:
cnt = 10

這樣不管數組是增加還是減少元素,sizeof(a)/sizeof(a[0]) 都能自動求出數組的長度。需要注意的是,它求出的是數組的總長度,而不是數組中存放的有意義的數據的個數。比如定義一個int型的數組:

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

我們只初始化了五個元素,但是 sizeof(a)/sizeof(a[0]) 求出的是 10,而不是 5。換句話說,我們無法通過 sizeof(a)/sizeof(a[0]) 求出數組中有多少個有意義的數據。

使用庫函數strlen

lenght = strlen(str);

這種方法只適用于字符串數組

使用while循環遍歷計數

int i=0;
while(str[i++] != '\0');

以上就是在C語言中獲取數組長度的方法有哪些,小編相信有部分知識點可能是我們日常工作會見到或用到的。希望你能通過這篇文章學到更多知識。更多詳情敬請關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

宁城县| 上林县| 乌拉特前旗| 克拉玛依市| 抚州市| 辽阳市| 化州市| 鸡西市| 策勒县| 四川省| 安庆市| 南皮县| 吉首市| 饶阳县| 马鞍山市| 台中市| 方城县| 津南区| 洛宁县| 万源市| 台南县| 额敏县| 文水县| 扎赉特旗| 卢湾区| 光泽县| 青浦区| 岫岩| 隆尧县| 滦南县| 密云县| 葫芦岛市| 时尚| 海淀区| 双流县| 微山县| 平顶山市| 阜阳市| 九龙城区| 常德市| 深州市|