妙用sizeof获得数组长度
生活随笔
收集整理的這篇文章主要介紹了
妙用sizeof获得数组长度
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
總所周知,sizeof關(guān)鍵字返回一個類型的長度。于是,一些聰明的人就想出了用sizeof(array) / sizeof(array[0])來獲取array數(shù)組的長度。這個表達式十分巧妙。第一個sizeof(array)返回array的長度,第二個sizeof(array[0])返回array每個元素的類型的長度。將數(shù)組的總長除以其中每個元素的長度,就可以得出該數(shù)組的長度。
寫個小程序試一下,可行。
那么,指針數(shù)組行不行呢?
咦,這次怎么失敗了?用printf看一下。
int類型的array[0]占4個字節(jié),int *類型的array為什么也占4個字節(jié)呢?如果把數(shù)組的長度改一下,會不會變化呢?
原來int *的長度與int一樣,都是4字節(jié)。所以,這種方法只適用與普通數(shù)組。在對待指針數(shù)組時,我們不能用這個方法來取得數(shù)組長度。
總結(jié)
以上是生活随笔為你收集整理的妙用sizeof获得数组长度的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 「原理」AB测试-详细过程和原理解读
- 下一篇: 传音 Tecno Camon 20 /