五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

sizeof()坑了不少程序員

2020-04-22 09:56 作者:非本人登陸請忽略  | 我要投稿

獲取數(shù)組的長度時不要對數(shù)組名應(yīng)用 sizeof 操作符,獲取字符串的度時不要對指針應(yīng)用 sizeof?符;如果你要使用,那么請仔細(xì)檢查?sizeof()的結(jié)果。

在 C /C++中,sizeof 坑了不少程序員。它也是各大公司爭相選用的面試必備題目。簡單地講,sizeof 是一個單目操作符,不是函數(shù)。其作用就是返回一個操作數(shù)所占的內(nèi)存字節(jié)數(shù)。其中,操作數(shù)可以是一個表達(dá)式或括在括號內(nèi)的類型名,操作數(shù)的存儲大小由操作數(shù)的類型來決定。例如,對于數(shù)組 int a[5],可以使用“sizeof(a)”來獲取數(shù)組的長度,使用“sizeof(a[0])”來獲取數(shù)組元素的長度。

初始化一個數(shù)組。從表面看,下面代碼的輸出結(jié)果應(yīng)該是“0,1,2,3,4”,但實(shí)際結(jié)果卻出乎我們的意料。

錯誤版本

是什么原因?qū)е逻@個結(jié)果呢?在這里出現(xiàn)了一個很大問題:由于 arr 參數(shù)是一個形參,它是一個指針類型,其結(jié)果是sizeof(arr)=4,sizeof(int*)=4。“sizeof(arr)/sizeof(arr[0])”的結(jié)果為 1。

我們可以通過傳入數(shù)組的長度的方式來解決這個問題


正確

計算字符串的大小,從表面看,下面代碼的輸出結(jié)果應(yīng)該是13,但實(shí)際結(jié)果卻出乎我們的意料。


錯誤版本

正確


sizeof 操作符容易挖坑出錯。當(dāng)用于函數(shù)類型、不完全類型(指具有未知存儲大小的數(shù)據(jù)類型,如未知存儲大小的數(shù)組類型、未知內(nèi)容的結(jié)構(gòu)或聯(lián)合類型、void 類型等)與位字段。例如下面的情況要小心。

不完全類型


sizeof()坑了不少程序員的評論 (共 條)

分享到微博請遵守國家法律
积石山| 金塔县| 淳化县| 株洲县| 子洲县| 金寨县| 承德市| 旬邑县| 吉林市| 理塘县| 寻乌县| 沂源县| 乌兰察布市| 平潭县| 双牌县| 海安县| 隆回县| 荃湾区| 鹤峰县| 姚安县| 上思县| 云林县| 平陆县| 庆安县| 尼勒克县| 东台市| 成安县| 略阳县| 澎湖县| 柘荣县| 呈贡县| 哈尔滨市| 河东区| 崇左市| 夏津县| 松阳县| 天全县| 濮阳县| 株洲市| 合江县| 莎车县|