在32位平台,任何型別的位址都是4位元組。
型別
兩個型別:指標變數自身型別以及所指向的型別
指標取值寬度:由指標變數指向的型別長度決定
指標跨度: 由指標變數指向的型別長度決定
強制轉換
char
* p;
(short
*)p; 改變指標取值寬度和跨度
區域性指標變數不初始化儲存的是隨機位址
void
* 可以定義變數, void 不可以
void
* 定義的變數叫萬能指標,可以儲存任何一級指標,但是 不能解引用,需要 轉換型別
未初始化的指標不能解引用(引發段錯誤)
不要直接給指標變數賦值,不要越界操作 [
]是*(
)的縮寫
陣列名 代表首元素位址, +
1跳過乙個元素
&陣列名 代表陣列的首位址,+
1跳過整個陣列
陣列名和陣列名位址相同,但型別不同
陣列名是符號常量,不能被賦值
指標變數 指標強制型別轉換
一 什麼是指標變數?指標變數,實質上是乙個變數,只是它是存放位址的變數,指標的型別代表的是它所指向的變數的型別,因此就有了指向整形 字元型 浮點型等其他型別的指標。但實際上所有型別的指標變數存放的都是int型的位址 16位的編譯系統,int是2位元組 32的編譯系統,int是4位元組 本質上,不同型...
Object C 指標變數強制型別轉換
除了id型別外,指標變數只能呼叫它編譯時型別的方法。而不能呼叫它執行時型別的方法,即使它實際所指向的物件包含該方法。如果需要讓這個指標變數呼叫執行時型別的方法,就需要強制型別轉換。import intmain intargc,const char argv return0 2014 11 29 15...
Object C 指標變數強制型別轉換
除了id型別外,指標變數只能呼叫它編譯時型別的方法。而不能呼叫它執行時型別的方法,即使它實際所指向的物件包含該方法。如果需要讓這個指標變數呼叫執行時型別的方法,就需要強制型別轉換。import intmain intargc,const char ar return0 2014 11 29 15 2...