在c++中,&這個符號有兩個含義,一種含義是取某個變數或者物件的位址。這個位址是指記憶體位址,這個位址取到之後,可以賦給乙個指標。例如下面這樣
int a=5;
int *p=&a;
這就表示,有乙個變數為a,其值為5,然後有乙個指標變數p,它儲存了變數a的位址。
但c++中,&還有乙個用途是定義引用常量。引用其實就相當於是乙個變數的別名,從它的功能上說與指標很類似,但使用起來比較簡便。
我們先來看如何定義乙個引用
int a=5;
int &b=a;
這就表示,有乙個變數為a,其值為5,然後有乙個引用變數b,它引用了變數a。實際上此時兩個變數的操作都會影響到彼此,因為它們所使用的記憶體是一樣的。
那麼,引用與指標相比有什麼大的區別呢?依我看,主要是使用起來比較方便
為了說明這個問題,我用下面的範例做了解釋
陳希章 於 2009/8/5 15:08:04 發布在:
C 中引用與位址運算子( )
在c 中,這個符號有兩個含義,一種含義是取某個變數或者物件的位址。這個位址是指記憶體位址,這個位址取 到之後,可以賦給乙個指標。例如下面這樣 int a 5 int p a 這就表示,有乙個變數為a,其值為5,然後有乙個指標變數p,它儲存了變數a的位址。但c 中,還有乙個用途是定義引用常量。引用其實...
引用運算子 (C )
在c 中提供了一種引用運算子 將某一變數定義為另乙個變數的引用變數,改變其中的乙個變數兩者均會同步變化。什麼是應用變數?引用變數 於 數學,是計算機語言中能儲存計算結果或能表示值抽象概念。變數可以通過變數名訪問。在指令式語言中,引用變數通常是可變的 但在純函式式語言中,變數可能是不可變的。定義乙個引...
C語言 運算子和 運算子
變數 代表 取變數的位址 變數 代表 指標型的變數 取址運算子 用來取得其運算元的位址。如果運算元 x 的型別為 t,則表示式 x 的型別是 t 型別指標 指向 t 的指標 取址運算子的運算元必須是在記憶體中可定址到的位址。換句話說,該運算子只能用於函式或物件 例如左值 而不可以用於位欄位,以及那些...