
- C++基礎
- C++主頁
- C++概述
- C++環境設定
- C++基本語法
- C++註釋
- C++ Hello World
- C++省略名稱空間
- C++常量/字面量
- C++關鍵字
- C++識別符號
- C++資料型別
- C++數值資料型別
- C++字元資料型別
- C++布林資料型別
- C++變數型別
- C++變數作用域
- C++多個變數
- C++基本輸入/輸出
- C++修飾符型別
- C++儲存類
- C++運算子
- C++數字
- C++列舉
- C++引用
- C++日期和時間
- C++控制語句
- C++決策
- C++ if語句
- C++ if else語句
- C++巢狀if語句
- C++ switch語句
- C++巢狀switch語句
- C++迴圈型別
- C++ while迴圈
- C++ for迴圈
- C++ do while迴圈
- C++ foreach迴圈
- C++巢狀迴圈
- C++ break語句
- C++ continue語句
- C++ goto語句
- C++建構函式
- C++建構函式和解構函式
- C++複製建構函式
C++空指標
如果您沒有確切的地址要賦值,那麼將指標變數賦值為NULL始終是一個好習慣。這在變數宣告時完成。賦值為NULL的指標稱為空指標。
NULL指標是一個值為零的常量,在包括iostream在內的多個標準庫中定義。考慮以下程式:
#include <iostream> using namespace std; int main () { int *ptr = NULL; cout << "The value of ptr is " << ptr ; return 0; }
編譯並執行上述程式碼後,將產生以下結果:
The value of ptr is 0
在大多數作業系統上,程式不允許訪問地址0處的記憶體,因為該記憶體由作業系統保留。但是,記憶體地址0具有特殊意義;它表示該指標並非指向可訪問的記憶體位置。但按照約定,如果指標包含空(零)值,則假定它不指向任何內容。
要檢查空指標,可以使用if語句,如下所示:
if(ptr) // succeeds if p is not null if(!ptr) // succeeds if p is null
因此,如果所有未使用的指標都賦予空值,並且避免使用空指標,則可以避免意外濫用未初始化的指標。許多時候,未初始化的變數包含一些無用值,這使得程式除錯變得困難。
cpp_pointers.htm
廣告