[問題] C語言 關於指標的疑問

作者: angus60704 (kato)   2016-03-16 18:54:41
1.空指標的定義是 不指向任何地方
疑問是NULL為0 記憶體裡沒有位址為0的地方嗎
2.用空指標指東西並讀取會造成RUNTIME ERROR
想問原理是什麼和記憶體
和系統實際上會怎麼運作
3.如果有一個沒有被指向的記憶體區間
有可能還找的到嗎
4.記憶體區段錯誤是因為沒有權限
那系統會怎麼運作?
停止然後直接回報錯誤嗎或是做其他動作
麻煩各位了
主要為Windows 系統來說
問題本身如果就有錯 也請各位糾正
作者: Caesar08 (Caesar)   2016-03-16 19:00:00
1不是 2指東西不會錯誤,讀取才會 4看不懂描述3可用偵測memory leak的方式找到,但這是debug時再用的
作者: ronin728 (浪人)   2016-03-16 19:49:00
1 2 4 題這裏有答案 https://goo.gl/VjGPlA
作者: CoNsTaR ((const *))   2016-03-16 19:59:00
NULL 不一定為 0 啊 有些機器上不是 而且標準沒規定
作者: descent (「雄辯是銀,沉默是金」)   2016-03-17 20:58:00
作者: soso7885 (YOHO)   2016-03-18 10:04:00
Null != 0

Links booklink

Contact Us: admin [ a t ] ucptt.com