怎么確定數(shù)組元素個(gè)數(shù) c語言怎么取數(shù)組中的元素個(gè)數(shù)的?
c語言怎么取數(shù)組中的元素個(gè)數(shù)的?有一個(gè)獲取數(shù)組元素?cái)?shù)的函數(shù):sizeof!其原理是:sizeof獲取數(shù)組的長度,然后將其除以數(shù)據(jù)類型的長度得到元素?cái)?shù)。我只寫下代碼:inta[100]={1,2,3,4
c語言怎么取數(shù)組中的元素個(gè)數(shù)的?
有一個(gè)獲取數(shù)組元素?cái)?shù)的函數(shù):sizeof!其原理是:sizeof獲取數(shù)組的長度,然后將其除以數(shù)據(jù)類型的長度得到元素?cái)?shù)。我只寫下代碼:inta[100]={1,2,3,4}intlen=sizeof(a)/sizeof(int)printf(%dn,len)。以上是最初的答案。出現(xiàn)錯(cuò)誤:給定數(shù)組大小時(shí),sizeof不起作用。我沒有注意到我犯了一些錯(cuò)誤請(qǐng)?jiān)徫乙荒旰笮薷牧诉@個(gè)答案~我以為int array的默認(rèn)值是0,這叫初始化。假設(shè)non-0是有效元素,而(I<100){if(a[I]!=0)計(jì)數(shù)I}遍歷。記錄字符數(shù)組有終止符。只要找到終結(jié)者的位置
使用sizeof。
例如,如果結(jié)構(gòu)是struct test,
define struct test a[100];
要獲得此100,請(qǐng)使用:
sizeof(a)/sizeof(struct test);
總空間除以每個(gè)元素的空間,即數(shù)字。
【C語言】如何獲取結(jié)構(gòu)體數(shù)組元素的個(gè)數(shù)?
對(duì)于字符數(shù)組STR[n],有三種判斷方法:第一種是使用庫函數(shù)strlenlen=strlen(STR)//數(shù)組長度;第二種是使用計(jì)數(shù)器inti=0while(STR[i])]!=“0”//數(shù)組STR的長度為I,第三種方法是使用sizeof函數(shù)len=sizeof(STR)/sizeof(STR[0])//數(shù)組的長度。對(duì)于其他類型的數(shù)組,可以使用字符數(shù)組的第三種方法。第三種方法是通用的。