當(dāng)前位置:博客首頁(yè)>>編程基礎(chǔ) >> 閱讀正文

【C++】C++指針與數(shù)組的學(xué)習(xí)小結(jié)(一)

作者: 鄭曉 分類: 編程基礎(chǔ) 發(fā)布于: 2012-10-23 23:15 瀏覽:6,799 評(píng)論(1)


最近學(xué)習(xí)到了指針部分,指針類型確實(shí)不算簡(jiǎn)單,看的我是一頭霧水…下面是我對(duì)C++指針與數(shù)組的一點(diǎn)兒小結(jié)(參考C++Primer Plus)。

一、指針的聲明。不管學(xué)習(xí)哪種類型,最先接觸的應(yīng)該就是這種類型的聲明方法。在C++中,聲明一個(gè)指針類型可以使用以下格式:

typename * poitername

如: int * p,p是指針,*p 是一個(gè)int型變量而不是指針。

二、指針的賦值。因?yàn)橹羔槂?chǔ)存的是地址,所以應(yīng)將把內(nèi)存地址賦給指針??梢允褂貌僮鞣?amp;來(lái)獲得被命名的內(nèi)存地址,或使用new 關(guān)鍵字(操作符) 來(lái)獲得一個(gè)未命名的內(nèi)存地址,如:

int myInt=10;

int * p = &myInt;

或:

double *p;

p = new double [30];

三、解除指針的引用。對(duì)指針解除引用意味著獲得指針指向的值。對(duì)指針應(yīng)用解除引用或間接值操作符(*)來(lái)解除引用。因此,如果像上面的例子中那樣,pn是指向myInt的指針,則*p是指向的值。這里感覺(jué)有點(diǎn)兒繞,其實(shí)很簡(jiǎn)單,就是說(shuō)加*與不加*的區(qū)別…

另一種解除指針引用的方法是使用數(shù)組表示法,例如,pn[0] 與*pn是一樣的。決不要對(duì)未被初始化為適當(dāng)?shù)刂返闹羔樈獬谩?/p>

四、指針、指針?biāo)赶虻闹?。如果p是指向int的指針、則*p不是指向int的指針,而是完全等同于一個(gè)int類型的變量,p才是指針。

五、數(shù)組名。在多數(shù)情況下,C++將數(shù)組名視為數(shù)組的第一個(gè)元素的地址,一種例外情況是,將sizeof操作符用于數(shù)組名是,此時(shí)將返回整個(gè)數(shù)組的長(zhǎng)度。

int demo[10]; //現(xiàn)在 demo 與&demo[0]是等效的。

今天就復(fù)習(xí)到這,明天繼續(xù)…

? ? ? ?

本文采用知識(shí)共享署名-非商業(yè)性使用 3.0 中國(guó)大陸許可協(xié)議進(jìn)行許可,轉(zhuǎn)載時(shí)請(qǐng)注明出處及相應(yīng)鏈接。

本文永久鏈接: http://www.yjfs.org.cn/c-c-pointers-and-arrays-learning-summary-a.html

【C++】C++指針與數(shù)組的學(xué)習(xí)小結(jié)(一):目前有1 條留言

用戶評(píng)論頭像 哼哼豬發(fā)表于 2012年10月24日 14:45[回復(fù)]

留個(gè)筆記,很好的習(xí)慣

發(fā)表評(píng)論

change vcode