C 特有用法 引用

2021-10-10 14:20:31 字數 1298 閱讀 8625

對乙個資料可以建立引用,他的作用是為變數起乙個別名

int a;

int&b = a;

//宣告b是a的引用

不要理解成取位址了喔~

ps:1.引用並不是一種資料型別。對引用只有宣告,沒有定義

2.宣告乙個引用的同時要初始化它,即宣告他代表哪乙個變數

3.在宣告乙個引用後,不能再使之作為另一變數的引用

4.不能建立引用陣列int a[5];int &b = a;錯誤!

5.不能建立引用的引用

6.能取引用的位址,此時取的位址為其引用變數的位址

引用的本質還是指標

#includeusing namespace std;

int main(void)

{ void swap(int &,int &);//傳遞的是引用,是真正的傳位址

//傳遞指標實際上也是傳值,只不過傳的值是位址

int i = 3,j = 5;

swap(i,j);

cout<<"i="《引用本身不是乙個物件,所以不能定義指向引用的指標,但指標是物件,所以存在對指標的引用

int i = 42;

int *p;

int *&r = p;//r是對指標p的引用

r = &i;//令p指向i

*r = 0;

如何理解指向指標的引用呢?

離變數名最近的符號對變數的型別有著最直接的影響

此處是&,說明本質是個引用,*符號說明引用的是乙個指標。

const int ci = 1024;

const int &r1 = ci;//正確

r1 = 42;//錯誤ci是const型別常量,不可改值

int &r2 = ci;//錯誤,int &r2說明ci可以被改變,但ci是const,所以兩者不符

可以const引用不const,但不const引用const是非法的

int i = 42;

int &r1 = i;//引用r1繫結物件i

const int &r2 = i;//r2也繫結i,但不能通過r2修改i的值,因為引用是const

r1 = 0;//正確

r2 = 0;//錯誤

Perl標量的特有用的函式

對標量進行操作還可以使用下面的函式。第乙個是length 這個函式可以返回變數列印出來的長度。例如 length 23 將會返回2 length hahaha 將會返回6 length 1 將返回1。在perl5中length 你好 將會返回4,聽說在perl5.6中將不會。我沒有實驗過,不好說什麼...

C 引用用法

引用就是給變數取外號而已。void r x 不能建立void型別引用 int r x 不能建立引用的引用 int p x 不能建立指向引用的指標,但是可以建立指向指標的引用 int ra 10 a 不能建立引用的陣列 總結 引用一有三無 有型別,無引用,無指標,無陣列 includeusing na...

C 中引用的用法

因為c 的所有物件都是從object派生,所以c 物件的建立,類似c 中指標的建立,如果按照c 的模式來理解c 的引用關係就非常簡單了。c 物件之間的傳遞,始終是傳遞的是指標 按照c 的理解 所以在函式引數傳遞過程中就需要考慮到應用的問題了,也就是給指標的位址重新賦值。看看我這個c 的新手自己寫的d...