第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

sizeof是如何計算數(shù)組大小的

sizeof是如何計算數(shù)組大小的

慕碼人8056858 2019-04-19 16:29:57
char*ptr;chararr[10];sizeof(ptr)=4;sizeof(arr)=10;請問是如何計算數(shù)組大小的?這里只是把地址傳給sizeof啊
查看完整描述

2 回答

?
牧羊人nacy

TA貢獻1862條經(jīng)驗 獲得超7個贊

嚴格講,
sizeof(arr)=10;這里只是把地址傳給sizeof啊
你這句話是錯誤的,你傳的是數(shù)組名,數(shù)組名不等價于地址。
編譯器用數(shù)組名標記數(shù)組的屬性,比如具有確定數(shù)量的元素。而你說的地址,也就是指針,只是一個標量值。
只有當數(shù)組名在表達式中使用時,編譯器才會為它產(chǎn)生一個指針常量。而只有以下兩種情況,才不被當做指針常量:
sizeof(數(shù)組名):返回數(shù)組長度(所占的字節(jié)數(shù),不是數(shù)組元素個數(shù)),而不是指向數(shù)組的指針的長度。
&數(shù)組名:產(chǎn)生一個指向數(shù)組的指針,而不是一個指向某個指針常量的指針。
以上內容來源:《C和指針》P141~142
                            
查看完整回答
反對 回復 2019-04-19
?
浮云間

TA貢獻1829條經(jīng)驗 獲得超4個贊

sizeof不是函數(shù),而是編譯器提供的操作符,由編譯器計算并返回一個數(shù)據(jù)結構的大小。
在這里,編譯器知道arr的大小(否則它怎么為其分配內存呢?),所以能夠返回正確的結果10。
                            
查看完整回答
反對 回復 2019-04-19
  • 2 回答
  • 0 關注
  • 2477 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網(wǎng)微信公眾號