[問題] 有關陣列的問題

看板C_and_CPP作者 (安安你好)時間10年前 (2015/05/18 11:07), 編輯推噓3(3012)
留言15則, 9人參與, 最新討論串1/1
開發平台(Platform): (Ex: VC++, GCC, Linux, ...) GCC 程式碼(Code):(請善用置底文網頁, 記得排版) http://ideone.com/cBW4YC 補充說明(Supplement): 我想問為什麼這樣能編譯過而且能正確顯示5,50,100 我一開始設定 int n[10]; 可是為什麼我能夠設定n[50]=50;甚至是n[100]=100; 不但編譯能過最後還能夠正確顯示5,50,100 練習的時候想到的小問題 另外寫了一個cpp測試一下沒想到真的能過 一個小問題拜託有人能幫我解惑一下! thanks~ -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.43.7.113 ※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1431918455.A.584.html

05/18 11:13, , 1F
會過正常 你的書關於陣列沒有再三強調用法嗎
05/18 11:13, 1F

05/18 11:25, , 2F
overflow 請不要這樣幹
05/18 11:25, 2F

05/18 11:26, , 3F
十三戒也讀一讀
05/18 11:26, 3F

05/18 11:28, , 4F
不應該問「為什麼可以」而是要知道「為什麼不行」
05/18 11:28, 4F

05/18 12:02, , 5F
c語言覺得這是程式設計師自己要注意的事
05/18 12:02, 5F

05/18 15:38, , 6F
n[10000]=50試試@@
05/18 15:38, 6F

05/18 16:12, , 7F

05/18 16:14, , 8F
簡單說,沒限制能存取陣列的哪裡,但掛了請自己負責
05/18 16:14, 8F

05/18 16:31, , 9F
可以試試看加 -fsanitize=address
05/18 16:31, 9F

05/18 17:06, , 10F
XDDDDDDDDDDDDDDD
05/18 17:06, 10F

05/18 17:07, , 11F
你預約十個房間 發現第十一個房間空著就拿去用
05/18 17:07, 11F

05/18 17:08, , 12F
在沒有被其他程式碼發現的情況下,當然沒問題
05/18 17:08, 12F

05/18 17:08, , 13F
但是當有程式碼付了錢要來用他所預約的房間時就有了
05/18 17:08, 13F

05/18 22:23, , 14F
C在存取陣列時並不會幫你檢查 index 是否超過範圍
05/18 22:23, 14F

05/19 10:08, , 15F
想推坑組合語言
05/19 10:08, 15F
文章代碼(AID): #1LMLTtM4 (C_and_CPP)