[問題] 指標是否等於存取RAM?

作者: hsucheng (Marshall)   2016-08-27 00:20:54
最近學到指標,但一直不是很清楚意思,
int addr;
int *addr; //data
意思是,指標可以在addr上做存取資料,
我想在 addr = 0xff 的位子上寫 data = 0x00
這行轉成程式就變成 *addr = 0x00
所以我在整個code中,
每個function都能知道變數的記憶體,就可以直接做存取?
不知這樣解讀是否正確
作者: CaptainH (Cannon)   2016-08-27 00:32:00
現在os大多是virtual memory,換言之你拿到的不會是ram的physical address
作者: Killercat (殺人貓™)   2016-08-27 00:37:00
記憶體不等於RAM 你要先有這概念你可以說是「記憶體位置」但這位置不見得在RAM上
作者: LPH66 (-6.2598534e+18f)   2016-08-27 01:56:00
概念上不能說錯, 但並不是任意哪裡都能給你隨便指
作者: odsan (安東尼尼)   2016-08-28 14:48:00
亂指可能會指到非法的記憶體位址 很危險

Links booklink

Contact Us: admin [ a t ] ucptt.com