卖逼视频免费看片|狼人就干网中文字慕|成人av影院导航|人妻少妇精品无码专区二区妖婧|亚洲丝袜视频玖玖|一区二区免费中文|日本高清无码一区|国产91无码小说|国产黄片子视频91sese日韩|免费高清无码成人网站入口

c語言求數(shù)組的長度 c語言怎么獲取數(shù)組的長度?

c語言怎么獲取數(shù)組的長度?在C語言中,定義數(shù)組后,可以使用sizeof命令獲取數(shù)組的長度(它可以容納的元素?cái)?shù)),例如:{int data[4]int length=sizeof(data)/sizeo

c語言怎么獲取數(shù)組的長度?

在C語言中,定義數(shù)組后,可以使用sizeof命令獲取數(shù)組的長度(它可以容納的元素?cái)?shù))

,例如:{int data[4]int length=sizeof(data)/sizeof(data[0])//數(shù)組占用的總內(nèi)存空間除以單個元素printf占用的內(nèi)存空間(”length)of data[4]=%d,length)//輸出數(shù)據(jù)長度[4]=4}

但是,通過將array name參數(shù)傳遞給子函數(shù)來獲取數(shù)組長度是不可行的。例如:

int getlength(int[]a){int length=sizeof(a)/sizeof(a[0])//這是錯誤的,結(jié)果總是1 return length}因?yàn)閍是一個函數(shù)參數(shù),在這個函數(shù)中,a只是一個指針(地址,系統(tǒng)不知道這個函數(shù)運(yùn)行時地址a代表了多少數(shù)據(jù)存儲空間,這里僅此而已告訴函數(shù):一個數(shù)據(jù)存儲空間(第一個地址)。因此,sizoef(a)的結(jié)果是內(nèi)存中指針變量a的大小,在32位計(jì)算機(jī)上通常為4字節(jié)。[0]是int類型,sizeof(A[0])是4字節(jié),因此結(jié)果總是1。

因此,要獲得數(shù)組的長度,我們只能在數(shù)組定義所在的代碼區(qū)域中使用上述方法。