0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

C語言求數(shù)組長度的5種方法

撞上電子 ? 2023-11-19 08:00 ? 次閱讀

1,使用 sizeof 運算符

#include
int main() { int array[] = {1, 2, 3, 4, 5}; unsignedchar length=sizeof(array)/sizeof(array[0]);
printf("Array length: %d\n", length);
return 0;}

解析:sizeof(array) 返回整個數(shù)組的字節(jié)大小,sizeof(array[0]) 返回數(shù)組中一個元素的字節(jié)大小。通過相除可以得到數(shù)組的元素個數(shù)。

2,使用宏定義

#include
#define ARRAY_LENGTH(arr) (sizeof(arr) / sizeof(arr[0]))
int main() { int array[] = {1, 2, 3, 4, 5}; unsigned char length = ARRAY_LENGTH(array);
printf("Array length: %d\n", length);
return 0;}

解析:這里使用了宏定義,將獲取數(shù)組長度的操作封裝在 ARRAY_LENGTH 中,使得代碼更具可讀性。

3,傳遞數(shù)組和數(shù)組長度給函數(shù)

#include
unsigned char getArrayLength(int *arr, size_t size) { return size;}
int main() { int array[] = {1, 2, 3, 4, 5}; unsigned char length = getArrayLength(array, sizeof(array) / sizeof(array[0]));
printf("Arraylength:%d\n",length); return 0;}

解析:函數(shù) getArrayLength 接受一個指向整數(shù)的指針和數(shù)組的大小,然后直接返回數(shù)組的大小。


4,使用 strlen(適用于字符串?dāng)?shù)組)

#inlude#include
int main() { char strArray[] = "Hello, World!"; unsigned char length = strlen(strArray);
printf("StringArraylength:%d\n",length);
return 0;}

解析:strlen 函數(shù)用于計算字符串的長度,適用于以 null 結(jié)尾的字符串?dāng)?shù)組。


5,使用指針

#include
int main() { int array[] = {1, 2, 3, 4, 5}; int *ptr = array; unsigned char length = sizeof(array) / sizeof(*ptr);
printf("Array length: %d\n", length);
return 0;}

解析:將數(shù)組的首地址賦給指針,然后通過指針進行操作。這里同樣使用了 sizeof 方法。==========

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • C語言
    +關(guān)注

    關(guān)注

    180

    文章

    7595

    瀏覽量

    135916
  • 數(shù)組
    +關(guān)注

    關(guān)注

    1

    文章

    412

    瀏覽量

    25883
  • 運算符
    +關(guān)注

    關(guān)注

    0

    文章

    171

    瀏覽量

    11052
收藏 人收藏

    評論

    相關(guān)推薦

    飛凌嵌入式ElfBoard ELF 1板卡-shell腳本編寫之數(shù)組

    件中定義數(shù)組Arr,分別使用三方式進行打?。簣?zhí)行并打印:3、獲取數(shù)組長度數(shù)組長度獲取使用或者${#Arr[@]},在腳本中加入:執(zhí)行腳本,可以看到數(shù)組大小為3:
    發(fā)表于 08-30 09:25

    在一個.c文件中定義一個數(shù)組遇到的疑問求解

    在一個.c文件中定義一個數(shù)組,然后在其他文件中引用,用sizeof求數(shù)組長度,那么按說是必須要聲明這個數(shù)組,并且應(yīng)該指明數(shù)組的大小,但是是不
    發(fā)表于 05-14 07:03

    嵌入式中零長度數(shù)組基本操作方法

    C語言長度數(shù)組,聽起來可能有點奇怪,因為它沒有分配內(nèi)存空間,無法存儲數(shù)據(jù)。但實際上,零長度數(shù)組在Linux內(nèi)核中隨處可見。 零長度數(shù)組的定
    的頭像 發(fā)表于 05-11 08:49 ?836次閱讀
    嵌入式中零<b class='flag-5'>長度數(shù)組</b>基本操作<b class='flag-5'>方法</b>

    PHP中數(shù)組的使用方法!

    PHP中數(shù)組的使用方法! PHP是一廣泛使用的網(wǎng)絡(luò)編程語言,它的數(shù)組功能非常強大且靈活。數(shù)組
    的頭像 發(fā)表于 01-12 15:11 ?492次閱讀

    js判斷是否在數(shù)組中存在

    JavaScript 是一用于客戶端和服務(wù)器端編程的腳本語言。它提供了許多內(nèi)置函數(shù)和方法,以便進行數(shù)組操作。 在本文中,我們將學(xué)習(xí)如何使用 JavaScript 來判斷一個元素是否存
    的頭像 發(fā)表于 11-30 16:23 ?1074次閱讀

    js中如何判斷數(shù)組中包含某個特定的值

    在JavaScript中,我們可以通過多種方法來判斷一個數(shù)組中是否包含某個特定的值。以下是一些常用的方法: 使用indexOf()方法:indexOf()
    的頭像 發(fā)表于 11-30 16:21 ?1625次閱讀

    在VisualDSP++中,設(shè)置數(shù)組長度到一定的時候出現(xiàn)內(nèi)存溢出的情況怎么解決?

    在VisualDSP++中,設(shè)置數(shù)組長度到一定的時候出現(xiàn)內(nèi)存溢出的情況,但是目前設(shè)置的數(shù)組并不大。 問題吐下 [Error li1040] \".21489 AD1939 C
    發(fā)表于 11-29 07:29

    C語言中的數(shù)組格式與初始化

    ????數(shù)組:只能存放一數(shù)據(jù)類型,比如int類型的數(shù)組、float類型的數(shù)組,里面存放的數(shù)據(jù)稱為“元素”。 ????數(shù)組的定義: ????
    的頭像 發(fā)表于 11-26 16:12 ?740次閱讀
    <b class='flag-5'>C</b><b class='flag-5'>語言</b>中的<b class='flag-5'>數(shù)組</b>格式與初始化

    C語言數(shù)組的用法

    C語言數(shù)組是一數(shù)據(jù)結(jié)構(gòu),它可以存儲多個相同類型的數(shù)據(jù),例如整數(shù),字符,浮點數(shù)等。數(shù)組的每個元素都有一個索引,用來表示它在
    的頭像 發(fā)表于 11-24 17:48 ?1215次閱讀
    <b class='flag-5'>C</b><b class='flag-5'>語言</b>中<b class='flag-5'>數(shù)組</b>的用法

    c語言中多維數(shù)組可以嵌套定義

    C語言中多維數(shù)組可以嵌套定義,這使得我們可以在一個數(shù)組中存儲另一個數(shù)組。通過這種方式,我們可以創(chuàng)建更加復(fù)雜和靈活的數(shù)據(jù)結(jié)構(gòu),以便更好地表示和
    的頭像 發(fā)表于 11-24 10:18 ?1047次閱讀

    c語言數(shù)組怎么定義

    C語言中,數(shù)組是一用來存儲相同類型元素的數(shù)據(jù)結(jié)構(gòu)。它可以存儲多個元素,并通過一個共同的名稱來引用這些元素。數(shù)組是一
    的頭像 發(fā)表于 11-24 10:11 ?2815次閱讀

    C語言如何創(chuàng)建數(shù)組

    C語言是一非常強大和靈活的編程語言,它提供了若干數(shù)據(jù)類型來存儲和操作數(shù)據(jù)。其中之一就是數(shù)組,它可以用來存儲一系列具有相同數(shù)據(jù)類型的元素。本
    的頭像 發(fā)表于 11-24 10:08 ?1674次閱讀

    c語言數(shù)組中查找指定元素

    C語言是一通用的編程語言,廣泛應(yīng)用于各種領(lǐng)域,包括嵌入式系統(tǒng)、操作系統(tǒng)、游戲開發(fā)等。在C語言
    的頭像 發(fā)表于 11-24 10:07 ?3572次閱讀

    c語言字符串定義

    C語言是一強大而廣泛使用的編程語言,字符串是其中一個非常重要的概念。在C語言中,字符串是由一系
    的頭像 發(fā)表于 11-24 10:02 ?1750次閱讀

    修復(fù)鋰電池的三種方法

    電子發(fā)燒友網(wǎng)站提供《修復(fù)鋰電池的三種方法.doc》資料免費下載
    發(fā)表于 11-15 10:40 ?5次下載
    修復(fù)鋰電池的三<b class='flag-5'>種方法</b>