a级毛片免费全部播放-a级毛片免费观看在线播放-a级毛片免费观看网站-a级毛片免费看-国产成人精品在视频-国产成人精品在线

歡迎來到培訓(xùn)無憂網(wǎng)!

全國切換

咨詢熱線 400-001-5729

位置:培訓(xùn)無憂網(wǎng) > 新聞資訊 > 電腦/IT > c語言 >  C語言培訓(xùn)問答之為什么沒有數(shù)組下標(biāo)越界檢查?

C語言培訓(xùn)問答之為什么沒有數(shù)組下標(biāo)越界檢查?

來源:www.dedgn.cn 發(fā)布人:星星

2021-12-24 11:03:27|已瀏覽:141次

數(shù)組下標(biāo)越界檢查

      各位,相信你們對數(shù)組的使用已經(jīng)再熟悉不過了,不過大家有沒有想過數(shù)組使用的越界問題,換句話說,C對數(shù)組的長度范圍會進(jìn)行檢查嗎?

      答案是不會。因此當(dāng)向數(shù)組越界寫入數(shù)據(jù)的時候,經(jīng)常產(chǎn)生“內(nèi)存被破壞”的問題。如果在較早的階段,操作系統(tǒng)發(fā)現(xiàn)異常并且提示Segmentation fault,或者“強(qiáng)制關(guān)閉異常的應(yīng)用程序”。但此時相鄰變量的值已經(jīng)被破壞,程序卻還在繼續(xù)運(yùn)行,那后果就不可想象了。既然這樣,為什么C標(biāo)準(zhǔn)還是不會去檢查呢?
       有人說頻繁地進(jìn)行范圍檢查會影響效率,但至少應(yīng)該讓我們在編譯的時候可以使用一個選項(xiàng),以便要求編譯器在調(diào)試模式下編譯程序的時候,幫我們實(shí)施數(shù)組下標(biāo)范圍的檢查。有這樣的想法的人,不只是我一個吧。但是,請稍微再想一想這個問題。對于C來說,當(dāng)數(shù)組出現(xiàn)在表達(dá)式中的時候,它會立刻被解讀成指針。此外,使用其他的指針變量也可以指向數(shù)組的任意元素,并且這個指針可以隨意進(jìn)行加減運(yùn)算。引用數(shù)組元素的時候,雖然你可以寫成a[i],但是它只不過是*(a+i)的一種表達(dá)。
       還有,當(dāng)你向一個函數(shù)傳遞數(shù)組的時候,實(shí)際上你傳遞的是一個指向初始元素的指針。如果這個函數(shù)還存在于其他的代碼文件中(另外一個編譯單元),那么通過編譯器是不可能追蹤到數(shù)組的。要求這樣的語言在編譯時生成檢查數(shù)組長度的代碼,是不是有些強(qiáng)人所難?其實(shí)如果你一定要進(jìn)行數(shù)組長度檢查,可以考慮將指針封裝成結(jié)構(gòu)體那樣,運(yùn)行時讓指針自身持有可取值范圍的信息。可是這么做對性能的影響很大,同時,也喪失了非調(diào)試模式下編譯后的庫和指針的兼容性。

       因此C不會對數(shù)組進(jìn)行越界檢查,實(shí)際上,除了某些解釋型的編程語言之外,目前幾乎沒有編譯器可以為我們做數(shù)組的越界檢查。這就對我們寫代碼的提出了一些要求,那大家以后就要注意了!

       本文由培訓(xùn)無憂網(wǎng)達(dá)內(nèi)教育專屬課程顧問老師整理發(fā)布,更多C語言課程信息可關(guān)注培訓(xùn)無憂網(wǎng)C語言培訓(xùn)頻道或添加老師微信:15033336050

      注:尊重原創(chuàng)文章,轉(zhuǎn)載請注明出處和鏈接 http://www.dedgn.cn/news-id-9752.html 違者必究!部分文章來源于網(wǎng)絡(luò)由培訓(xùn)無憂網(wǎng)編輯部人員整理發(fā)布,內(nèi)容真實(shí)性請自行核實(shí)或聯(lián)系我們,了解更多相關(guān)資訊請關(guān)注c語言頻道查看更多,了解相關(guān)專業(yè)課程信息您可在線咨詢也可免費(fèi)申請?jiān)囌n。關(guān)注官方微信了解更多:150 3333 6050

留下你的信息,課程顧問老師會一對一幫助你規(guī)劃更適合你的專業(yè)課程!
  • 姓名:

  • 手機(jī):

  • 地區(qū):

  • 想學(xué)什么:

  • 培訓(xùn)無憂網(wǎng)
免 費(fèi) 申 請 試 聽
提交申請,《培訓(xùn)無憂網(wǎng)》課程顧問老師會一對一幫助你規(guī)劃更適合你的專業(yè)課程!

主站蜘蛛池模板: 亚洲在线中文字幕 | 亚洲成人在线网 | 久久久久久一级毛片免费野外 | 欧美一级毛片免费看视频 | 欧美一级毛片高清免费观看 | 杨幂国产精品福利在线观看 | 毛片免费观看成人 | 国产午夜精品理论片久久影视 | 亚洲欧美日韩久久一区 | 99精品免费久久久久久久久日本 | 99精品福利视频在线一区 | 欧美成人精品手机在线观看 | 午夜毛片网站 | 成人久久18免费网 | 欧美一级欧美三级 | 87精品福利视频在线观看 | 欧美视频一区二区三区在线观看 | 亚洲精品久久久久中文字幕一区 | 萌白酱福利视频在线网站 | 手机毛片在线观看 | 91精品视品在线播放 | 亚洲精品欧洲一区二区三区 | 亚洲精品久久99久久一区 | 久久精品免费观看国产软件 | 欧美精品一区二区三区免费播放 | 天天躁夜夜躁狠狠躁2024 | 成人一区二区免费中文字幕 | 狠色狠狠色狠狠狠色综合久久 | 欧美xxx精品 | 韩国日本一级毛片免费视频 | 久久视频国产 | 欧美精品成人一区二区在线观看 | 国产成人微拍精品 | 亚洲精品在线网站 | 成人一级免费视频 | 特级毛片www欧美 | 日本人的色道免费网站 | 久久国内精品自在自线软件 | 嫩模大尺度人体福利视频 | 亚洲精品一区二区三区不卡 | 美女视频网站永久免费观看软件 |