新聞中心
C/C++中如何獲取數(shù)組的長(zhǎng)度
用 sizeof 可以獲得數(shù)據(jù)類(lèi)型或變量在內(nèi)存中所占的字節(jié)數(shù)。同樣,用 sizeof 也可以獲得整個(gè)數(shù)組在內(nèi)存中所占的字節(jié)數(shù)。
創(chuàng)新互聯(lián)是一家專(zhuān)注于成都網(wǎng)站制作、網(wǎng)站設(shè)計(jì)與策劃設(shè)計(jì),修水網(wǎng)站建設(shè)哪家好?創(chuàng)新互聯(lián)做網(wǎng)站,專(zhuān)注于網(wǎng)站建設(shè)十年,網(wǎng)設(shè)計(jì)領(lǐng)域的專(zhuān)業(yè)建站公司;建站業(yè)務(wù)涵蓋:修水等地區(qū)。修水做網(wǎng)站價(jià)格咨詢(xún):13518219792
方法:使用sizeof(array) / sizeof(array[0]), 在C語(yǔ)言中習(xí)慣上,在使用時(shí)都把它定義成一個(gè)宏。比如#define GET_ARRAY_LEN(array,len) {len = (sizeof(array) / sizeof(array[0]));} 。
在c語(yǔ)言中,可以通過(guò)庫(kù)函數(shù)strlen來(lái)計(jì)算字符串的長(zhǎng)度,也可以通過(guò)循環(huán)計(jì)數(shù)來(lái)求取字符串長(zhǎng)度。
c語(yǔ)言中,定義數(shù)組后可以用sizeof命令獲得數(shù)組的長(zhǎng)度(即可容納元素個(gè)數(shù))。但是通過(guò)傳遞數(shù)組名參數(shù)到子函數(shù)中,以獲得數(shù)組長(zhǎng)度是不可行的,因?yàn)樵谧雍瘮?shù)當(dāng)中,數(shù)組名會(huì)退化為一個(gè)指針。
首先,打開(kāi)C語(yǔ)言編譯器,新建一個(gè)初始.cpp文件,例如:test.cpp。在test.cpp文件中,輸入C語(yǔ)言代碼:printf(%d, sizeof(ARRAY) / sizeof(int));。
template classTintgetArrayLen(T& array){return(sizeof(array) / sizeof(array[0]));}這樣對(duì)于一些簡(jiǎn)單的數(shù)組可以使用這個(gè)宏或者這個(gè)函數(shù)來(lái)獲取數(shù)組的長(zhǎng)度了。
C語(yǔ)言中求一個(gè)二維數(shù)組的一維數(shù)組的長(zhǎng)度有什么函數(shù)
1、C中沒(méi)有!可以用操作符sizeof(a)/sizeof(int)求得!length()函數(shù)在C++中string類(lèi)中求長(zhǎng)度。
2、二維數(shù)組int a[10][10]由10個(gè)一維數(shù)組int[10]構(gòu)成,每個(gè)一維數(shù)組的長(zhǎng)度都是10,總長(zhǎng)度是100。
3、C語(yǔ)言中的二維數(shù)組是“一維數(shù)組的數(shù)組”向函數(shù)中傳遞的時(shí)候,最外層的數(shù)組直接翻譯成指針,傳遞時(shí)傳遞其首地址,數(shù)組是傳不進(jìn)去的。所以 s是指針,sizeof(s) = 4 s是一個(gè)長(zhǎng)度為16個(gè)char的一維數(shù)組,長(zhǎng)度是16。
c語(yǔ)言計(jì)算字符數(shù)組的長(zhǎng)度
1、因?yàn)閿?shù)組中每個(gè)元素的類(lèi)型都是一樣的,在內(nèi)存中所占的字節(jié)數(shù)都是相同的,所以總的字節(jié)數(shù)除以一個(gè)元素所占的字節(jié)數(shù)就是數(shù)組的長(zhǎng)度。
2、C語(yǔ)言計(jì)算字符串長(zhǎng)度,可以手動(dòng)計(jì)算也可以使用庫(kù)函數(shù)或者sizeof()操作符。
3、strlen 用于計(jì)算字符串的長(zhǎng)度。數(shù)組長(zhǎng)度,應(yīng)是指數(shù)組大小,可存放幾個(gè)數(shù)組元素。下面例子 計(jì)算 float 數(shù)組a, char 數(shù)組s 的 數(shù)組長(zhǎng)度,計(jì)算s 里字符串長(zhǎng)度。(sizeof 用來(lái)計(jì)算 變量 和 類(lèi)型 占內(nèi)存的大小,單位是字節(jié)。
4、頭文件:string.h 功能:計(jì)算字符串s的(unsigned int型)長(zhǎng)度 說(shuō)明:返回s的長(zhǎng)度,不包括結(jié)束符NULL。
網(wǎng)站欄目:c語(yǔ)言求數(shù)組長(zhǎng)度的函數(shù) c語(yǔ)言 計(jì)算數(shù)組長(zhǎng)度
網(wǎng)站鏈接:http://ef60e0e.cn/article/dcscedd.html