
?
懸空指標
指向已洗掉(或釋放)的記憶體位置的指標稱為懸空指標,指標用作懸空指標有三種不同的方式
①記憶體分配:

?
②函式呼叫:

?
如果x是靜態變數,則不會出現問題(或p不會懸空),

?
輸出:5
變數超出范圍

?
無效指標
無效指標是一種特定的指標型別– void * –指向存盤中某個資料位置的指標,它沒有任何特定的型別,空是指型別,基本上,它指向的資料型別可以是任何型別,如果我們將char資料型別的地址分配給void指標,它將成為char指標,如果是int資料型別,則將成為int指標,依此類推,任何指標型別都可以轉換為空指標,因此可以指向任何值,
(1)void指標不能被取消參考,但是,可以使用型別轉換void指標來完成
(2)由于缺少具體的值和大小,因此無法對void指標進行指標算術運算,
例子:

?
輸出:
整數變數為= 4
浮動變數是= 5.500000
空指標
NULL指標是沒有指向任何內容的指標,如果沒有將地址分配給指標的情況,則可以簡單地使用NULL,

?
輸出 :
ptr的值為(null)
注意
(1)NULL與未初始化的指標–未初始化的指標存盤未定義的值,空指標存盤定義的值,但是環境定義的值不是任何成員或物件的有效地址,
(2)NULL vs void 指標–空指標是一個值,而空指標是一個型別
野指標
尚未初始化為任何值(甚至不是NULL)的指標稱為野生指標,可以將指標初始化為一個非NULL垃圾值,該值可能不是有效地址,

?
每天學點小知識,希望對你有幫助~
另外如果你想更好的提升你的編程能力,學好C語言C++編程!彎道超車,快人一步!筆者這里或許可以幫到你~
C語言C++編程學習交流圈子【點擊進入】微信公眾號:C語言編程學習基地
分享(原始碼、專案實戰視頻、專案筆記,基礎入門教程)
歡迎轉行和學習編程的伙伴,利用更多的資料學習成長比自己琢磨更快哦!

轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/271818.html
標籤:C++
