[問題] 對pointer取值執行發生錯誤

看板C_and_CPP作者 (鴆羅)時間13年前 (2011/11/09 01:58), 編輯推噓1(105)
留言6則, 5人參與, 最新討論串1/1
想請問一下 為什麼 int main() { int *a; *a=1; return 0; } run的時後會abort int main() { int *a=new int; *a=1; return 0; } 不會 謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.113.140.175

11/09 02:00, , 1F
int *a; -> 它指到哪裡
11/09 02:00, 1F

11/09 02:04, , 2F
編譯應該會過吧,是執行時當掉才對
11/09 02:04, 2F
※ 編輯: RZAddict 來自: 140.113.140.175 (11/09 02:05)

11/09 02:07, , 3F
a為宣告成NULL 等同指到一個垃圾地址
11/09 02:07, 3F

11/09 02:07, , 4F
11/09 02:07, 4F

11/09 02:09, , 5F
置底文十三戒的第三條看一下
11/09 02:09, 5F

11/09 02:33, , 6F
!!謝謝
11/09 02:33, 6F
文章代碼(AID): #1EkMs-Tt (C_and_CPP)