從一個例子看c語言指針與引用的區別

 

  1. #include <iostream> 
  2. using namespace std; 
  3. int main() { 
  4.     int iv;           //正確 很正常的聲明瞭一個整型變量 
  5.     int iv2 = 1024;   //正確 很正常的聲明瞭一個整型變量,同時初始化了這個變量
  6.     int iv3 = 399;    //正確 同上
  7.     int &reiv;        //錯誤 聲明瞭一個引用,但引用不能爲空,必須同時初始化             
  8.     int &reiv2 = iv;  //正確 聲明瞭一個引用&reiv2,同時初始化了它,也就是reiv2是iv的別名
  9.     int &reiv3 = iv;  //正確 同上
  10.     int *pi;          //正確 聲明瞭一個整形指針,但是並沒有定義這個指針所指向的地址                 
  11.     *pi = 5;          //錯誤 證書指針pi並沒有指向實際的地址。在這種情況下就給他賦值是錯誤的,因爲賦得值
  12. 不知道該放到哪裏去。pi沒有指向,不可以對其賦值。
  13.     pi = &iv3;        //正確 證書指針pi指向iv3的實際地址       
  14.     const double di;  //錯誤 const常量賦值時,必須同時初始化。本地的const常量必須在第一次聲明時就初始化。
  15.     const double maxWage = 10.0;  //正確 const常量賦值並同時初始化
  16.     const double minWage = 0.5;   //正確 同上
  17.     const double *pc = &maxWage;  //正確 const常量指針賦值並同時初始化
  18.   
  19.     cout << pi; 
  20.     return 0; 



 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章