c語言char怎么用 C語言。統(tǒng)計(jì)數(shù)組每個(gè)元素個(gè)數(shù)怎么做?
C語言。統(tǒng)計(jì)數(shù)組每個(gè)元素個(gè)數(shù)怎么做?你好,我是小四。我很高興為你回答。在賦值過程中,數(shù)組a[0]為0,即a[0]=0For(J<maxj){if(a[J]==null)//如果數(shù)組為空,則返回當(dāng)前
C語言。統(tǒng)計(jì)數(shù)組每個(gè)元素個(gè)數(shù)怎么做?
你好,我是小四。我很高興為你回答。在賦值過程中,數(shù)組a[0]為0,即a[0]=0For(J<maxj){if(a[J]==null)//如果數(shù)組為空,則返回當(dāng)前數(shù)組的下標(biāo),即數(shù)組元素?cái)?shù){T//或?qū)懭隺[J]=“0”m=J printf(%dn”,m)break},因此當(dāng)上述程序J=0時(shí),a[0]==null是真的,所以打印出來的M是0,所以你可以修改賦值語句為(I=1I<=10I){a[I]=I//依次賦值給十個(gè)數(shù)組}比較專業(yè)的科學(xué)知識,歡迎關(guān)注我。如果你喜歡我的回答,也請給我表揚(yáng)或轉(zhuǎn)發(fā),你的鼓勵(lì)是支持我寫下來的動力,謝謝。
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ò)誤請?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,請使用:
sizeof(a)/sizeof(struct test);
總空間除以每個(gè)元素的空間,即數(shù)字。
【C語言】如何獲取結(jié)構(gòu)體數(shù)組元素的個(gè)數(shù)?
對于字符數(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ù)組的長度。對于其他類型的數(shù)組,可以使用字符數(shù)組的第三種方法。第三種方法是通用的。
c語言如何取數(shù)組元素個(gè)數(shù)?
C語言怎么用變量定義來數(shù)組元素個(gè)數(shù)?
C語言中返回?cái)?shù)組元素個(gè)數(shù)?
izeof(a)的值是在編譯時(shí)刻確定的,所以如果你在程序里面這樣來做:
int a[] = {1, 2, 3, 4, 5}
int len = sizeof(a)/sizeof(a[0])
那么沒有問題,可以正確的得出數(shù)組的長度,因?yàn)檫@個(gè)時(shí)候在編譯時(shí)刻可以很容易的知道a有5個(gè)元素。
但是你把int a[]作為參數(shù)傳遞到函數(shù)里面,編譯時(shí)刻無法得知你要傳送什么樣的參數(shù)進(jìn)去,所以這個(gè)時(shí)候?qū)嶋H上是把a(bǔ)當(dāng)作一個(gè)int 指針處理的,那么sizeof(a)實(shí)際上是指針的大小,這個(gè)在32位系統(tǒng)上是4,而a[0]是一個(gè)整數(shù),sizeof(a[0])在32位系統(tǒng)上的的大小也是4,所以就是1了。
sizeof(a)是在編譯時(shí)確定的,所以如果您在程序中這樣做:
int a[]={1,2,3,4,5}]int len=sizeof(a)/sizeof(a[0])
那么就沒有問題了。您可以正確地獲得數(shù)組的長度,因?yàn)榇藭r(shí),您可以很容易地知道a在編譯時(shí)有五個(gè)元素。
但是當(dāng)您將int a[]作為參數(shù)傳遞給函數(shù)時(shí),您不知道在編譯時(shí)要發(fā)送什么類型的參數(shù),因此此時(shí),您實(shí)際上將a視為int指針處理,那么sizeof(a)實(shí)際上是指針的大小,在32位系統(tǒng)上是4,[0]是整數(shù)。Sizeof(a[0])在32位系統(tǒng)上也是4,所以是1。