最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

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

C/C++編程筆記:什么是C++中的陣列衰減?如何預(yù)防?

2021-03-23 21:07 作者:C語言編程__Plus  | 我要投稿



什么是陣列衰減?

數(shù)組類型和維數(shù)的損失稱為數(shù)組的衰減,通常在我們通過值或指針將數(shù)組傳遞給函數(shù)時(shí)發(fā)生。它的作用是,將第一個(gè)地址發(fā)送到作為指針的數(shù)組,因此數(shù)組的大小不是原始的,而是指針在內(nèi)存中占用的大小。


輸出:

數(shù)組的實(shí)際大小為:28

通過傳遞值修改數(shù)組的大?。?

通過指針傳遞來修改數(shù)組的大?。?

在上面的代碼中,實(shí)際的數(shù)組具有7個(gè)int元素,因此具有28個(gè)大小。但是通過按值和指針進(jìn)行調(diào)用,數(shù)組會(huì)衰減為指針并輸出1個(gè)指針的大小,即8(32位中為4)。

如何防止陣列衰減?

到手柄衰變的典型解決方案是通過陣列的大小也作為參數(shù),而不是在陣列參數(shù)的sizeof使用(參見此的詳細(xì)信息)

防止數(shù)組衰減的另一種方法是通過引用將數(shù)組發(fā)送到函數(shù)中。這樣可以防止將數(shù)組轉(zhuǎn)換為指針,因此可以防止衰減。


輸出:

數(shù)組的實(shí)際大小為:28

通過引用傳遞來修改數(shù)組的大?。?8

在上面的代碼中,按引用傳遞數(shù)組解決了數(shù)組衰減的問題。兩種情況下的尺寸均為28。

每天學(xué)點(diǎn)小知識(shí),希望對(duì)你有幫助~

另外如果你想更好的提升你的編程能力,學(xué)好C語言C++編程!彎道超車,快人一步!筆者這里或許可以幫到你~

微信公眾號(hào):C語言編程學(xué)習(xí)基地

分享(源碼、項(xiàng)目實(shí)戰(zhàn)視頻、項(xiàng)目筆記,基礎(chǔ)入門教程)

歡迎轉(zhuǎn)行和學(xué)習(xí)編程的伙伴,利用更多的資料學(xué)習(xí)成長(zhǎng)比自己琢磨更快哦!



C/C++編程筆記:什么是C++中的陣列衰減?如何預(yù)防?的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國家法律
盘山县| 师宗县| 思茅市| 玉田县| 石景山区| 常熟市| 盐山县| 沙田区| 石河子市| 师宗县| 化德县| 长阳| 曲松县| 中方县| 罗定市| 万载县| 冷水江市| 新绛县| 那曲县| 安化县| 北票市| 航空| 花垣县| 镇巴县| 襄城县| 高尔夫| 屯留县| 万山特区| 枞阳县| 兰西县| 长治县| 天门市| 新竹市| 威海市| 湾仔区| 毕节市| 翁源县| 临泽县| 寿阳县| 丹棱县| 子洲县|