指針:
指針在本質(zhì)上是一個(gè)變量;指針需要占用一定的內(nèi)存空間;指針用于保存內(nèi)存地址的值
*號(hào)的意義:
在指針聲明時(shí),*號(hào)表示所聲明的變量為指針;
在指針使用時(shí),*號(hào)表示取指針?biāo)赶虻膬?nèi)存空間中的值 ;
char *p <==> (char *)p //前面的數(shù)據(jù)類型是修飾指針指向的空間大小,在32位機(jī)器中,指針大小為4字節(jié)
傳值調(diào)用與傳址調(diào)用:
指針是變量,因此可以聲明指針參數(shù)
當(dāng)一個(gè)函數(shù)體內(nèi)部需要改變實(shí)參的值,則需要使用指針參數(shù)
函數(shù)調(diào)用時(shí)實(shí)參值將復(fù)制到形參
指針適用于復(fù)雜數(shù)據(jù)類型作為參數(shù)的函數(shù)中
數(shù)組:
相同類型的變量的有序集合
數(shù)組的大?。簲?shù)組在一片連續(xù)的內(nèi)存空間中存儲(chǔ)元素,數(shù)組元素的個(gè)數(shù)可以顯示或隱式指定
Int a[5] = {1,2};
Int b[] = {1,2};
數(shù)組地址與數(shù)組名:
數(shù)組名代表數(shù)組首元素的地址(a);
數(shù)組的地址需要用取地址符&才能得到(&a);
數(shù)組首元素的地址值與數(shù)組的地址值相同
數(shù)組首元素的地址與數(shù)組的地址是兩個(gè)不同的概念
數(shù)組名的盲點(diǎn):
數(shù)組名可以看做一個(gè)常量指針;
數(shù)組名“指向”的是內(nèi)存中數(shù)組首元素的起始位置;
在表達(dá)式中數(shù)組名只能作為右值使用下
下列場(chǎng)合中數(shù)組名不能看做常量指針:
數(shù)組名作為sizeof操作符的參數(shù);數(shù)組名作為&運(yùn)算符的參數(shù)
變量 | 含義 |
---|---|
a | a為數(shù)組首元素的地址;a + 1 <==>(unsigned int)a + sizeof(*a) |
&a | &a為整個(gè)數(shù)組的地址; &a + 1 <==>(unsigned int)(&a) + sizeof(*&a) |
數(shù)組與指針?lè)治?:
數(shù)組的本質(zhì):
數(shù)組是一段連續(xù)的內(nèi)存空間;
空間大小為sizeof(array_type)* array_size;
數(shù)組名可看做指向數(shù)組第一個(gè)元素的常量指針
指針的運(yùn)算 :
數(shù)組的訪問(wèn)形式:
數(shù)組參數(shù):
數(shù)組作為函數(shù)參數(shù)時(shí),編譯器將其編譯成對(duì)應(yīng)的指針;
一般情況下,當(dāng)定義的函數(shù)中有數(shù)組參數(shù)時(shí),需要定義另一個(gè)參數(shù)來(lái)標(biāo)示數(shù)組的大小
void f(int a[]); ==>void f(int* a);
void f(int a[5]); ==>void f(int* a);
指針和數(shù)組的對(duì)比:
C語(yǔ)言中的字符串:
指針數(shù)組和數(shù)組指針?lè)治觯?/strong>
定義數(shù)組類型:
main函數(shù)的參數(shù):
main函數(shù)可以理解為操作系統(tǒng)調(diào)用的函數(shù);在執(zhí)行程序的時(shí)候可以向main函數(shù)傳遞參數(shù)
多維數(shù)組和多維指針:
指向指針的指針:
指針變量在內(nèi)存中會(huì)占用一定的空間;可以定義指針來(lái)保存指針變量的地址值
二維數(shù)組與二級(jí)指針:
數(shù)組參數(shù)和指針參數(shù)分析:
C語(yǔ)言中的數(shù)組參數(shù)會(huì)退化為指針:
二維數(shù)組參數(shù):
c語(yǔ)言中無(wú)法向一個(gè)函數(shù)傳遞任意的多維數(shù)組;
為了提供正確的指針運(yùn)算,必須提供除第一維之外的所有維長(zhǎng)度限制:
一維數(shù)組參數(shù) – 必須提供一個(gè)標(biāo)示數(shù)組結(jié)束位置的長(zhǎng)度信息
二維數(shù)組參數(shù) – 不能直接傳遞給函數(shù)
三維或更多維數(shù)組參數(shù) – 無(wú)法使用
函數(shù)與指針?lè)治觯?/strong>
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。
當(dāng)前標(biāo)題:指針和數(shù)組-創(chuàng)新互聯(lián)
網(wǎng)站地址:http://muchs.cn/article40/pcieo.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站制作、網(wǎng)站建設(shè)、網(wǎng)頁(yè)設(shè)計(jì)公司、關(guān)鍵詞優(yōu)化、App開(kāi)發(fā)、營(yíng)銷(xiāo)型網(wǎng)站建設(shè)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容