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

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

作者: 鄭曉 分類: 編程基礎(chǔ) 發(fā)布于: 2012-10-25 23:33 瀏覽:7,340 評論(3)


上一篇【C++】C++指針與數(shù)組的學(xué)習(xí)小結(jié)(一)里主要介紹了一些C++指針的基礎(chǔ)知識,講到了指針與數(shù)組名的關(guān)系。今天復(fù)習(xí)一下指針的運算、指針與數(shù)組的表示法以及數(shù)組的靜態(tài)與動態(tài)聯(lián)編。

一、指針的運算,C++允許將指針和整數(shù)進行相加運算。如將指針加1的結(jié)果等于原來的地址加上指向的對象所占用的總字節(jié)總數(shù)。當(dāng)然,你還可以將兩個指針進行相減以獲得兩個指針的差,這一種運算結(jié)果是一個整數(shù),應(yīng)該是相差的字節(jié)倍數(shù),僅當(dāng)兩個指針指向同一個數(shù)組(或指向超出結(jié)尾的一個位置)時,這種運算才有意義。

二、表示法,平時使用方括號數(shù)組表示法等同于對指針解除引用,arr[0]等價于*arr,arr[2]等價于*(arr+2),數(shù)組名和指針變量都是如此,所以對于指針和數(shù)組來說,既 可以使用數(shù)組方括號表示法,也可以使用指針表示法。

三、數(shù)組的聯(lián)編。在使用數(shù)組聲明創(chuàng)建數(shù)組時,數(shù)組的長度在編譯時設(shè)置,這叫做靜態(tài)聯(lián)編,如 int arr[10] ;

在使用關(guān)鍵詞new 來創(chuàng)建數(shù)組時,程序會在運行時為數(shù)組分配空間,其長度也將在程序運行時動態(tài)設(shè)置,所以這種方式也叫做動態(tài)聯(lián)編。使用完這種動態(tài)聯(lián)編的數(shù)組后需要使用delete[]來釋放其占用的內(nèi)存,實例如下:

int arrSize;

cin>>arrSize;

int * p = new int [arrSize]; //動態(tài)創(chuàng)建數(shù)組

…程序使用…

delete [] p; //刪除數(shù)組 釋放內(nèi)存

 

? ? ? ?

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

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

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

用戶評論頭像 洗煤機發(fā)表于 2013年08月05日 16:12[回復(fù)]

學(xué)著東東非常的難呀

用戶評論頭像 蔡佳網(wǎng)站發(fā)表于 2012年10月28日 23:55[回復(fù)]

你平時還學(xué)C++嗎?你現(xiàn)在的工作是做什么的?

    用戶評論頭像 鄭曉發(fā)表于 2012年10月29日 07:22[回復(fù)]

    工作是php,這個c++只是了解一下,這么強大的語言不能不了解吧?

發(fā)表評論

change vcode