void指標型別

2021-05-11 07:19:25 字數 641 閱讀 4301

void指標:

void指標有兩個屬性:指向變數/物件的位址和長度,但是指標只儲存位址,長度則取決於指標的型別,編譯器根據指標的型別從指標指向的位址向後定址,指標型別不同則定址範圍也不同,比如: int*從指定位址向後尋找4位元組作為變數的儲存單元,double*從指定位址向後尋找8位元組作為變數的儲存單元。

1.void指標是一種特別的指標

void *vp

//說它特別是因為它沒有型別 

//或者說這個型別不能判斷出指向物件的長度 

2.任何指標都可以賦值給void指標 

type *p; 

vp=p; 

//不需轉換 

//只獲得變數/物件位址而不獲得大小 

3.void指標賦值給其他型別的指標時都要進行轉換 

type *p=(type*)vp; 

//轉換型別也就是獲得指向變數/物件大小 

4.void指標不能復引用 

*vp//錯誤 

因為void指標只知道,指向變數/物件的起始位址 

而不知道指向變數/物件的大小(佔幾個位元組)所以無法正確引用 

5.void指標不能參與指標運算,除非進行轉換 

(type*)vp++; 

//vp==vp+sizeof(type)

void型別及void指標型別

許多初學者對c c 語言中的void及void指標型別不甚理解,因此在使用上出現了一些錯誤。本文將對void關鍵字的深刻含義進行解說,並詳述void及void指標型別的使用方法與技巧。2.void的含義 void的字面意思是 無型別 void 則為 無型別指標 void 可以指向任何型別的資料。vo...

void及void指標型別

1.概述 許多初學者對c c 語言中的void及void指標型別不甚理解,因此在使用上出現了一些錯誤。本文將對void關鍵字的深刻含義進行解說,並 詳述void及void指標型別的使用方法與技巧。2.void的含義 void的字面意思是 無型別 void 則為 無型別指標 void 可以指向任何型別...

void型別及void指標

基於前面的一篇部落格模擬實現 memcpy 和 memmove 時用到的void 指標展開關於 void 和 void 指標的概述 1.void 相信大家不會陌生,經常定義無返回值的函式是用 void 定義,表示函式無需返回值 void fun void 2.void 的字面意思是 無型別 void...