指標與位址 - OpenHome.cc

文章推薦指數: 80 %
投票人數:10人

int *n; float *s; char *c;. 雖然宣告指標時,C++ 習慣將 * 前置在變數名稱前,不過 n 的型態是 ... 回C++目錄 在〈變數〉談過,變數提供一個有名稱的記憶體儲存空間,變數可包含的資訊包含變數資料型態、變數記憶體位址與變數儲存值。

如果想知道變數的位址為何,可以使用&取址運算子(Address-ofoperator),例如: #include usingnamespacestd; intmain(){ intn=10; cout< usingnamespacestd; intmain(){ intn=10; int*p=&n; cout< usingnamespacestd; intmain(){ intn=10; int*p=&n; cout< usingnamespacestd; intmain(){ intn=10; int*p=&n; cout< usingnamespacestd; intmain(){ intn=10; void*p=&n; int*iptr=reinterpret_cast(p); cout<(&n); 在〈算術運算、型態轉換〉最後也提到過const_cast,這只是叫編譯器住嘴罷了,後續程式碼也是別對pi位址處的資料做變動,以避免執行時期不可預期的結果。

要留意的是,constint*p宣告的p並不是常數,可以儲存不同的位址。

例如: #include usingnamespacestd; intmain(){ constintn=10; constintm=20; constint*p=&n; cout<



請為這篇文章評分?