欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索

關于C語言數組的問題

查看數: 2058 | 評論數: 6 | 收藏 0
關燈 | 提示:支持鍵盤翻頁<-左 右->
    組圖打開中,請稍候......
發布時間: 2021-10-29 10:01

正文摘要:

在運行時,我把I設成32,編譯后運行正常,無錯誤。請問這個怎么回事,數組最大16,不是超出范圍了嗎

回復

ID:415064 發表于 2021-10-30 20:15
你查看下內存分布,ARR[2][2] ={{0,1},{2,3}},你同樣可以用ARR[3]調用,結果是3。這兩個是同一個地址
ID:976079 發表于 2021-10-29 20:19
會溢出啊,運行正常是你沒測試出來。會寫到其他內存去,只不過可能那段內存沒有其他變量用,就沒有造成錯誤。
ID:57657 發表于 2021-10-29 13:27
單片機運行時不檢查數組是否越界,一但越界可能會導致其他數組或變量的值被破壞。
ID:883242 發表于 2021-10-29 12:48
這是你走運,數組后面沒有其他數據,而且xdata空間足夠,所以越界沒出現錯誤。在電腦上面這么做試試,八成要崩潰。
ID:975955 發表于 2021-10-29 11:31
數組名類似一個指針,也就是起始地址,后面應用的話,相當于在起始地址上加偏移地址,超出數組范圍可以的,要自己寫程序注意
ID:277550 發表于 2021-10-29 11:08

C語言 本身不幫你檢測是否走出范圍的,要程序員掌控的。

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表