C++ 指標初始化要注意的地方
阿新 • • 發佈:2018-11-13
1. 宣告多個指標的時候:
int* P1,P2;
如上所示,宣告的是建立一個指標P1和一個int型的變數P2。而不是宣告的兩個指標。
對每個指標變數名,都需要使用一個*。
在C++中,int* 是一種複合型別,是指向int的指標。
2. 可以在宣告語句中初始化指標,但是,在這種情況下,被初始化的是指標,而不是它指向的值。
int higgens = 5; int * pt = &higgens;
這裡將pt(而不是*pt)的值設定為&higgens。
如下程式所演示:
#include<iostream> using namespacestd; int main() { int higgens = 5; int *pt = &higgens; cout << higgens <<endl; cout << &higgens << endl; cout << *pt <<endl; cout << pt; cin.get(); return 0; }
輸出:
5
006FFD88
5
006FFD88
3.指標的危險!!!
在C++中建立指標時,計算機將分配用來儲存地址的記憶體,而不會分配用來儲存指標所指向資料的記憶體,為資料提供空間是一個獨立的步驟!!!也就是說指標所指向的地址並不是用來儲存資料的地址!