C C 中 和 的用法詳解

2021-09-24 05:49:38 字數 1458 閱讀 4596

c++中&和*的用法一直是非常讓人頭疼的難點,課本部落格上講這些知識點一般都是分開講其用法的,沒有詳細的總結,導致我在這方面的知識結構格外混亂,在網上找到了一篇英文文章簡單總結了這兩個符號的一些用法,都是一些比較基礎的知識,我比較關心的函式指標,指標函式等都沒有涉及到,今後有時間把這部分學明白整理出來。

c/c++中*和&的用法

c++語言是c語言的超集。幾乎所有可以執行的c程式都是可以執行的c++程式。因此,寫乙個不包含c++特性的c++程式是可能的,儘管cout和引用的使用(見下文)更好的構成了乙個c++程式。c++和c在**格式上偶爾會有不同,比如,在c語言中,我們這樣把p宣告為乙個int型別的指標 int *p,而在c++中我們使用int* p(編譯器並不在意你使用的是哪種格式)。

在c/c++中,*和&有很多用法,具體的使用要根據**內容來確定。

c中*的用法

(a) 乘法運算:x=y*z;

(b) 乘法賦值運算:x*=y;相當於x=x*y

(c) 注釋:/*這裡是你的注釋*/

(d) 指標的宣告:int *p 或 int* p; 讀法:p是指向乙個整數型別的指標。

(e) 復合指標: int **p; 或 int** p; 讀法 p是乙個指向乙個指向整數型別的指標的指標。(同樣道理, int***p等等)

(f) 解引用: x=*p 把指標p指向的值賦值給x

&在c語言中的用法

(a) 邏輯與:if((a>1)&&(b<0))

(b) 位運算與:x=a&b;

(c) 邏輯與賦值:x&=y;與 x=x&y含義相同

c++中&的補充用法

c++中有一種c不存在的變數型別引用變數(簡單說來為引用),儘管在c語言中用指標也可以實現類似的功能。

引用,指標,位址是聯絡密切的概念。位址是在電腦記憶體中的位址(一般是一些變數的值在記憶體中的儲存位置),指標是存位址的變數,所以指標可以「指向」記憶體位址。概念上講,引用變數本質上是指標的另乙個名字(但是並不能被編譯器例項化)

在函式內像其他變數一樣定義乙個引用是可能的;舉例?

voidmain(void)

但是這是沒有意義的,因為引用的使用和對引用的變數的使用是一樣的。

引用在函式的引數中被使用。?

voidmain(void)

voidf(int& r)

這段程式輸出「6」(2*r使被r引用的變數加倍,也就是指i)

C C 中 和 的用法

c 中 和 的用法一直是非常讓人頭疼的難點,課本部落格上講這些知識點一般都是分開講其用法的,沒有詳細的總結,導致我在這方面的知識結構格外混亂,在網上找到了一篇英文文章簡單總結了這兩個符號的一些用法,都是一些比較基礎的知識,我比較關心的函式指標,指標函式等都沒有涉及到,今後有時間把這部分學明白整理出來...

c c 巨集中 和 的用法

kennyhe 發表於 2007 2 13 12 25 57 一 一般用法 我們使用 把巨集引數變為乙個字串,用 把兩個巨集引數貼合在一起.用法 i nclude i nclude using namespace std define str s s define cons a,b int a e ...

C C 巨集中「 和 」的用法

一 一般用法 我們使用 把巨集引數變為乙個字串,用 把兩個巨集引數貼合在一起.用法 i nclude i nclude using namespace std define str s s define cons a,b int a e b int main 二 當巨集引數是另乙個巨集的時候 需要注...