国产精品天干天干,亚洲毛片在线,日韩gay小鲜肉啪啪18禁,女同Gay自慰喷水

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

C++ 指針

2023-03-15 21:20 作者:S-a-i_  | 我要投稿

指針可以聲明為*d的形式,d為變量名。

指針可以和引用一樣實現(xiàn)對其他對象的間接訪問,然而指針還有很多其他的屬性。

  1. 指針本身是一個對象,允許對指針賦值和拷貝。

  2. 指針可以在生命周期內(nèi)實現(xiàn)對不同對象的指定,這是引用無法做到的。

  3. 指針在定義時無需初始化。

這是允許的

獲取對象的地址:

指針存放某個對象地址要用取址符&

一般情況下(后面我們會講兩種特殊情況),指針類型和他所指對象的類型嚴格匹配

錯誤的

指針的值(也是地址)應(yīng)屬于一下四個狀態(tài)之一:

1。指向一個對象

2。指向緊鄰對象所占空間的下一個位置

3??罩羔?,意味著指針沒有指向任何對象

4。無效指針,也就是上述情況外的其他值


試圖操作無效指針都將引發(fā)錯誤,但是編譯器并不會檢查此類錯誤!


第二種和第三種指針沒有指向具體對象,所以訪問此類指針的對象不被允許,如果這么做了后果無法預(yù)計。


利用指針訪問對象

我們用*(解引符)來訪問指針所指的對象(如果有的話)

用*得到指針p所指的對象

這里總結(jié)一下&和*的多重含義

同一個符號意義可以完全不同

空指針

都為生成空指針

nullptr可以被轉(zhuǎn)換成任意其他的指針類型。

NULL為一個預(yù)處理變量,它的值就是0

預(yù)處理器

后面會詳細介紹,現(xiàn)在我們可以知道它是運行于編譯過程之前的一段程序就行了,預(yù)處理變量不屬于命名空間std,由預(yù)處理器管理,因此我們可以直接使用而無需std::。

注意:

讓int變量直接賦給指針是錯誤的操作,即使int變量恰好等于0

錯誤的

訪問未經(jīng)初始化的指針后果很難處理,因此建議初始化所有的指針。


賦值和指針

注意區(qū)別改變指針所指的對象和改變指針


指針可以通過==或者!=來比較,同時一個指針指向某一個對象,同時另一個指針指向另一對象的下一個地址,兩個指針也可能相等。(注:這里要用到指針的值,如果是非法指針后果將無法預(yù)測)


后面還會介紹更多關(guān)于指針的知識。(可見指針在C++中十分重要。。


void*指針

void*可以存放任意類型指針,看起來很炫酷但是這也讓我們無法知道這個地址到底是個什么類型的對象。

關(guān)于void*在比較后面會有更詳細的介紹。


練習:

改變指針的值和指針所指對象的值。

敘述下列代碼的作用

(將p1和i綁定,同時將i變成i方


?lp錯誤的原因

類型不同不能賦值


C++ 指針的評論 (共 條)

分享到微博請遵守國家法律
大化| 灵寿县| 闻喜县| 祥云县| 偏关县| 隆子县| 汝州市| 甘谷县| 丽江市| 水富县| 民乐县| 通辽市| 冷水江市| 乐清市| 太白县| 连州市| 吉首市| 阳东县| 施甸县| 都昌县| 扶风县| 临湘市| 南召县| 南京市| 潜山县| 农安县| 昌吉市| 彭水| 桐乡市| 阜南县| 九龙坡区| 普兰县| 南宫市| 鹤庆县| 工布江达县| 绵竹市| 天等县| 德阳市| 平武县| 大英县| 吴江市|