1、個(gè)數(shù)= sizeof(arr) / sizeof(int)注意: 這里的arr單獨(dú)出現(xiàn)的話代表的是整個(gè)數(shù)組,不是首地址。

為南潯等地區(qū)用戶提供了全套網(wǎng)頁設(shè)計(jì)制作服務(wù),及南潯網(wǎng)站建設(shè)行業(yè)解決方案。主營業(yè)務(wù)為網(wǎng)站設(shè)計(jì)制作、做網(wǎng)站、南潯網(wǎng)站設(shè)計(jì),以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務(wù),秉承以專業(yè)、用心的態(tài)度為用戶提供真誠的服務(wù)。我們深信只要達(dá)到每一位用戶的要求,就會得到認(rèn)可,從而選擇與我們長期合作。這樣,我們也可以走得更遠(yuǎn)!
2、用 sizeof 可以獲得數(shù)據(jù)類型或變量在內(nèi)存中所占的字節(jié)數(shù)。同樣,用 sizeof 也可以獲得整個(gè)數(shù)組在內(nèi)存中所占的字節(jié)數(shù)。
3、c語言中,定義數(shù)組后可以用sizeof命令獲得數(shù)組的長度(可容納元素個(gè)數(shù))。
4、strlen(str) 首先說說它,str[20]={a,b,c,\0};printf(%d,strlen(str));輸出的值為3,而不是20,因?yàn)閟trlen認(rèn)\0的,\0就認(rèn)為結(jié)束。sizeof(str)則不管\0,定義多大數(shù)組就顯示多大。
數(shù)組長度都是用靜態(tài)量設(shè)定的,也就是說編譯階段就確定了。
用 sizeof 可以獲得數(shù)據(jù)類型或變量在內(nèi)存中所占的字節(jié)數(shù)。同樣,用 sizeof 也可以獲得整個(gè)數(shù)組在內(nèi)存中所占的字節(jié)數(shù)。
動(dòng)態(tài)數(shù)組可以使用動(dòng)態(tài)內(nèi)存分配來實(shí)現(xiàn):int*a[]然后通過 sizeof(a)/sizeof(int*)獲得。具體代碼可能有出入,僅作思路說明。
a[10]={1,2,3,4,5,6,7}; 也可以用sizeof(a)/sizeof(int)來做,結(jié)果是10,因?yàn)槟莻€(gè)數(shù)組長是10而不是7,后面幾個(gè)元素是默認(rèn)值0。
數(shù)組長度都是用靜態(tài)量設(shè)定的,也就是說編譯階段就確定了。
首先,打開C語言編譯器,新建一個(gè)初始.cpp文件,例如:test.cpp。在test.cpp文件中,輸入C語言代碼:printf(%d, sizeof(ARRAY) / sizeof(int));。編譯器運(yùn)行test.cpp文件,此時(shí)成功求出了數(shù)組的長度是4。
因?yàn)閿?shù)組中每個(gè)元素的類型都是一樣的,在內(nèi)存中所占的字節(jié)數(shù)都是相同的,所以總的字節(jié)數(shù)除以一個(gè)元素所占的字節(jié)數(shù)就是數(shù)組的長度。
方法:使用sizeof(array) / sizeof(array[0]), 在C語言中習(xí)慣上,在使用時(shí)都把它定義成一個(gè)宏。比如#define GET_ARRAY_LEN(array,len) {len = (sizeof(array) / sizeof(array[0]));} 。
網(wǎng)站名稱:c語言檢測數(shù)組長度函數(shù) c語言測量數(shù)組長度的函數(shù)
文章位置:http://www.chinadenli.net/article6/deidpog.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供Google、網(wǎng)站制作、網(wǎng)站導(dǎo)航、品牌網(wǎng)站制作、企業(yè)網(wǎng)站制作、虛擬主機(jī)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)