C++基礎教程-指標

來源:互聯網
上載者:User

  使用指標可以直接操作記憶體位址,提高效率,缺點是繞彎比較難理解,本教程為大家介紹C++語言中的指標。

  1、啟動 Geany

  1)點菜單“應用程式-編程-Geany”啟動 Geany ,建立一個 c++ 來源程式;

  2)點菜單“檔案-另存新檔”命令,以“ptr”為檔案名稱,儲存檔案到自己的檔案夾;

  2、指標變數

  1)使用指標前也要先定義,用 * 號來定義,賦值用其他變數的地址,也可以初始化為空白 NULL;

  輸入下面的代碼:

      int a = 25;

      int *p = NULL;

      p = &a; 

  2)第一句定義一個整型變數 a,每個變數都有記憶體位址,用 &a 命令得到變數的地址,

  第二句定義一個指標變數,類型是整型,星號 * 是定義符號,NULL 表示賦值為空白值,

  第三句是給指標變數 p 賦值,值是變數 a 的地址,格式形如 0x123456;

  3)接著我們來顯示一下各個變數的值,跟各自的類型相對應;

      cout << "a = " << a;

      cout << "&a= " << &a;

      cout << "p = " << p; 

  4)a 是整型變數,裡面裝的是整數,&a 是取地址操作符,得到的是地址,

  p 是一個指標變數,裡面存放的地址,p 給的是 a 的地址,所以兩個地址是相同的;

  5)接下來我們來看利用指標操作它對應的變數,繼續輸入下面的代碼;

      cout << "*p= " << *p << endl;

  6)這兒的 *p 不是定義指標,因為星號 * 前面沒有類型,而且 p 已經定義過,不能重複定義,

  這兒的 *p 是間接引用,指向的是 a,因為 p 裡存放的是 a 的地址,因此 *p 的值是 25;

  7)利用 *p 可以對變數 a 進行操作,例如下面的代碼給 a 重新賦值;

      *p = 16;

      cout <<"a = " << a; 

  #include <iostream>

  using namespace std;

  int main(int argc, char** argv)

  {

      int a = 25;

      int *p = NULL; //定義指標變數,並初始化

      p = &a;        //賦值給指標變數

     

      cout << "a = " << a  << endl;

      cout << "&a= " << &a << endl;

      cout << "p = " << p  << endl;

     

      cout << endl;

     

      cout << "*p= " << *p << endl;

      cout << endl;

     

      *p = 16;     //間接引用,不是定義指標

      cout <<"a = " << a;

      return 0;

  } 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.