C指標變數的型別及強制轉換

2021-10-17 03:18:19 字數 596 閱讀 6890

在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...