【C++】C++指針與數(shù)組的學(xué)習(xí)小結(jié)(一)
作者: 鄭曉 分類: 編程基礎(chǔ) 發(fā)布于: 2012-10-23 23:15 瀏覽:6,981 評論(1)
最近學(xué)習(xí)到了指針部分,指針類型確實不算簡單,看的我是一頭霧水…下面是我對C++指針與數(shù)組的一點兒小結(jié)(參考C++Primer Plus)。
一、指針的聲明。不管學(xué)習(xí)哪種類型,最先接觸的應(yīng)該就是這種類型的聲明方法。在C++中,聲明一個指針類型可以使用以下格式:
typename * poitername
如: int * p,p是指針,*p 是一個int型變量而不是指針。
二、指針的賦值。因為指針儲存的是地址,所以應(yīng)將把內(nèi)存地址賦給指針??梢允褂貌僮鞣?amp;來獲得被命名的內(nèi)存地址,或使用new 關(guān)鍵字(操作符) 來獲得一個未命名的內(nèi)存地址,如:
int myInt=10;
int * p = &myInt;
或:
double *p;
p = new double [30];
三、解除指針的引用。對指針解除引用意味著獲得指針指向的值。對指針應(yīng)用解除引用或間接值操作符(*)來解除引用。因此,如果像上面的例子中那樣,pn是指向myInt的指針,則*p是指向的值。這里感覺有點兒繞,其實很簡單,就是說加*與不加*的區(qū)別…
另一種解除指針引用的方法是使用數(shù)組表示法,例如,pn[0] 與*pn是一樣的。決不要對未被初始化為適當(dāng)?shù)刂返闹羔樈獬谩?/p>
四、指針、指針?biāo)赶虻闹怠H绻鹥是指向int的指針、則*p不是指向int的指針,而是完全等同于一個int類型的變量,p才是指針。
五、數(shù)組名。在多數(shù)情況下,C++將數(shù)組名視為數(shù)組的第一個元素的地址,一種例外情況是,將sizeof操作符用于數(shù)組名是,此時將返回整個數(shù)組的長度。
int demo[10]; //現(xiàn)在 demo 與&demo[0]是等效的。
今天就復(fù)習(xí)到這,明天繼續(xù)…
本文采用知識共享署名-非商業(yè)性使用 3.0 中國大陸許可協(xié)議進(jìn)行許可,轉(zhuǎn)載時請注明出處及相應(yīng)鏈接。
本文永久鏈接: http://yjfs.org.cn/c-c-pointers-and-arrays-learning-summary-a.html
留個筆記,很好的習(xí)慣