設陣列array宣告為int array[]={3,5,6,8,5,4,9,7};
怎麼利用sizeof關鍵字計算陣列array內元素的個素呢?
2007-06-18 11:47:43 · 2 個解答 · 發問者 ? 2 in 電腦與網際網路 ➔ 程式設計
sizeof:計算某個儲存體(記憶體)內的位元組。
假定 int 佔 4 個位元組,sizeof(array) 傳回 32 個位元組。
32 / 4 = 8 個元素
所以這行程式碼可以寫成…
length=(int)sizeof(array)/sizeof(int);
雖然幾乎很多人使用 32 位元相同的電腦作業系統,但是有少數是使用不同的作業系統;不同的作業系統,所佔的資料位元組可能不太一樣,所以用 sizeof(int) 來替代 4 這個常數。
2007-06-18 12:22:50 · answer #1 · answered by Big_John-tw 7 · 0⤊ 0⤋
我會用 sizeof(array)/sizeof(array[0]), 這樣的好處是有一天你的 array 型態改成 float, double, long.... 都不用回來改分母的部份
2007-06-18 18:57:20 · answer #2 · answered by Walala 5 · 0⤊ 0⤋