程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> C++入門知識 >> 【C++自我精講】基礎系列一 指針與引用

【C++自我精講】基礎系列一 指針與引用

編輯:C++入門知識

【C++自我精講】基礎系列一 指針與引用 0 前言

指針、引用、指針與引用區別。

1 指針

變量:代碼中常常通過定義變量來申請並命名存儲空間,並通過變量的名字來使用這段存儲空間。

 nNum;    
nNum = ;  
nNum = ;  

 指針:又叫一級指針,用來指示一個內存地址的變量。對於一個類型T(int、char、folat...),T*就是指向T的指針類型,一個T*類型的變量保存了一個T對象的地址。

 *pNum;   
pNum = &nNum;
int nNum1 = *pNum; 

 指針變量:指針是地址,指針變量是存放地址的變量。

 *pVar = pNum;

二級指針:指向指針變量的指針。

 **ppNum = pVar;

 用一張圖表示下二級指針:

 

C是常量;B是一級指針,B的值(即C的地址)是一級指針數據;A是二級指針,A的值(即B的地址)是二級指針數據。

空指針:不指向任何對象,指針變量值為NULL。指針為空的判斷常常為了避免指針變量的非法使用。

 *pNum =(NULL !=

 函數指針:是指向函數的指針變量。可用該指針變量調用函數,就如同用指針變量引用其他類型變量一樣。

 函數指針聲明格式:類型說明符 (*函數名)(參數)  

 min( x,
 max( x,
 (*pFun)(, 
 nNumMin =  nNumMax =  nMin =  nMax = == (*pFun)(nNumMin,nNumMax);
pFun == (*pFun)(nNumMin,nNumMax);

指針函數:函數的返回值類型是一個指針類型,本質是一個函數。

指針函數聲明格式:類型說明符 *函數名(參數)  或 類型說明符 *(函數名(參數))

 *pfun(, );
2 引用

引用:是對象的別名,對引用的操作與對變量的直接操作一樣。其主要用於函數參數和返回值類型,T&表示T類型的引用。引用不是數據類型,引用本身不占存儲空間。

 i =  &j = i;
3 指針與引用區別

1)指針可以指向空值,引用不能。如果一個變量指向另一個對象,它可能為空,應該用指針;它不允許為空,應該使用引用。

2)指針可以改變指向,引用不可以改變指向。引用初始化以後不能被改變,指針可以改變所指的對象。

3)指針的大小是固定字節(4個字節),引用的大小是所指變量的大小。

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