在實際**中,經常需要獲取乙個或一些變數經過某個函式功能模組後的值,可以使用return返回變數或指標(將全域性變數帶入形參,在函式內部修改其值的方法顯然是行不通的,因為形參只是拷貝,也切記勿要返回區域性指標變數,因為函式退出後會銷毀該指標從而造成記憶體錯誤),當然,亦可以使用指標或引用帶入功能模組。在剛學習指標時,常常容易把指標*和引用&混在一起,因為它們均表示位址。這裡說明一下指標和引用的區別。
相同點
均是位址概念, 指標指向記憶體的位址;引用是某塊記憶體的別名
區別
聯絡
引用在語言內部用指標實現
說明
int m;
int &n = m;//n相當於m的別名(綽號),對n的任何操作就是對m的操作
舉例
#include
#include
using
namespace
std;
void aa(vector
> *angle)
void bb(vector
> &angle)
int main(int argc, char *argv)
/* result:
* anglecmd 5 6
* anglecmd 11 15
* anglecmd 14 28
*/
C 指標和引用
在深入介紹之前我們首先來看一下指標和引用的定義 指標和引用的區別,然後分別針對指標和引用展開討論,深入細節為何有這些差異。指標和引用的定義,下面用通俗易懂的話來概述一下 而宣告指標是可以不指向任何物件,也正是因為這個原因,使用指標之前必須做判空操作,而引用就不必。其次,引用不可以改變指向,對乙個物件...
C 引用和指標
引用和指標看上去差不多,看上去差不多,其實男寶寶和女寶寶是不一樣的 用起來還是有一定差距。本人菜鳥僅將遇到的問題記錄備案,以便日後翻查 ptrfunc.h ifndef ptrfunc h define ptrfunc h typedef int func int,int struct aa end...
C 指標和引用
有了變數名,為什麼還需要乙個別名呢?c 之所以增加引用型別,主要是把它作為函式引數,以擴充函式傳遞資料的功能 到目前為止我們介紹過函式引數傳遞的兩種情況 1 將變數名作為實參和形參 這時傳給形參的是變數的值,傳遞是單向的 如果在執行函式期間形參的值發生變化,並不傳回給實參 因為在呼叫函式時,形參和實...