程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> 關於C++ >> C言語 一級指針與二級指針詳細引見

C言語 一級指針與二級指針詳細引見

編輯:關於C++

C言語 一級指針與二級指針詳細引見。本站提示廣大學習愛好者:(C言語 一級指針與二級指針詳細引見)文章只能為提供參考,不一定能成為您想要的結果。以下是C言語 一級指針與二級指針詳細引見正文


指針的概念

    指針就是地址, 應用這個地址可以找到指定的數據

    指針就是地址, 那麼在運用的時分, 經常會復雜的說 指針變量為指針

    指針變量就是存儲地址的變量

   int *p1;// 請求了一個變量, 即在內存中開拓了一塊內存, 存儲數據

     // 開拓了 8 個字節, 在 Mac 下 指針都占 8 個字節

    運用指針, 實踐上應該說成運用指針變量

    1> 算術運算

    +1 挪動幾個字節?

    看類型: int *,  long *,  char *

    2> 取得地址表示的數據

    指針外面存儲的是地址, 就可以將該地址中的數據取出來

    尋址運算符 *&p1  -> p1

    3> 修正改地址中的數據

    4> 作為函數參數的運用(*****)

    假如傳遞的不是指針變量, 而是普通的變量, 就是值傳遞: 函數內與函數外是兩個不同的變量, 只是存儲的數據相反(好比發送文件)

    假如傳遞的是指針變量, 即傳遞的是地址, 那麼就是援用傳遞: 函數內外可以看成同一個變量(好比發送鏈接)

    由於函數參數運用指針後, 可以完成函數內變量修正後, 影響到函數外的變量. 因而經常將函數參數設置為指針類型的變量

    完成應用參數前往多個數據的函數

    scanf("%d", &num);

    二級指針

    二級指針就是指向一級指針的指針(n 級指針就是 指向 n-1 級指針的 指針)

    指針的實質就是地址, 那麼幾級指針也只是一個地址, 獨一不同的就是尋址的後果(*p)

    1>在開發中運用 二級指針的中央就是應用函數或辦法前往一個 一級指針數據

   2> 假如需求用函數參數前往數據, 假如前往的是普通的數據, 傳遞一級指針

   3> 假如前往的是一個一級指針, 那麼參數應該是一個二級指針

   4> 假如前往的是一個 n 級指針, 那麼參數應該是一個 n+1 級指針

  下圖中*p1指的是num的值,*p2指的是p1內存的地址,**p2也指的是num的值......

感激閱讀,希望能協助到大家,謝謝大家對本站的支持!

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved