嵌入式新仙境的個(gè)人空間 http://selenalain.com/space-uid-108247.html [收藏] [復制] [RSS]

博客

指針

已有 1641 次閱讀2014-3-8 11:04 |個(gè)人分類(lèi):技術(shù)論文| 嵌入式培訓, 深圳嵌入式開(kāi)發(fā), 寶安嵌入式培訓, 西鄉嵌入式

指針是一個(gè)特殊的變量,它里面存儲的數值被解釋成為內存里的一個(gè)地址。 要搞清一個(gè)指針需要搞清指針的四方面的內容:指針的類(lèi)型,指針所指向的 類(lèi)型,指針的值或者叫指針所指向的內存區,還有指針本身所占據的內存區。讓我們分別說(shuō)明。
先聲明幾個(gè)指針?lè )胖?zhù)做例子:
例一:

(1)int*ptr;

(2)char*ptr;

(3)int**ptr;

(4)int(*ptr)[3];

(5)int*(*ptr)[4];

如果看不懂后幾個(gè)例子的話(huà),請參閱我前段時(shí)間貼出的文章<<如何理解cc ++的復雜類(lèi)型聲明>>。

指針的類(lèi)型
從語(yǔ)法的角度看,你只要把指針聲明語(yǔ)句里的指針名字去掉,剩下的部分就是這個(gè)指針的類(lèi)型。這是指針本身所具有的類(lèi)型。讓我們看看例一中各個(gè)指針的類(lèi)型:

(1)int*ptr;//指針的類(lèi)型是int*

(2)char*ptr;//指針的類(lèi)型是char*

(3)int**ptr;//指針的類(lèi)型是int**

(4)int(*ptr)[3];//指針的類(lèi)型是int(*)[3]

(5)int*(*ptr)[4];//指針的類(lèi)型是int*(*)[4]

怎么樣?找出指針的類(lèi)型的方法是不是很簡(jiǎn)單?

指針所指向的類(lèi)型

當你通過(guò)指針來(lái)訪(fǎng)問(wèn)指針所指向的內存區時(shí),指針所指向的類(lèi)型決定了編譯器將把那片內存區里的內容當做什么來(lái)看待。

從語(yǔ)法上看,你只須把指針聲明語(yǔ)句中的指針名字和名字左邊的指針聲明符*去掉,剩下的就是指針所指向的類(lèi)型。例如:

(1)int*ptr;//指針所指向的類(lèi)型是int

(2)char*ptr;//指針所指向的的類(lèi)型是char

(3)int**ptr;//指針所指向的的類(lèi)型是int*

(4)int(*ptr)[3];//指針所指向的的類(lèi)型是int()[3]

(5)int*(*ptr)[4];//指針所指向的的類(lèi)型是int*()[4]

在指針的算術(shù)運算中,指針所指向的類(lèi)型有很大的作用。

指針的類(lèi)型(即指針本身的類(lèi)型)和指針所指向的類(lèi)型是兩個(gè)概念。當你對C越來(lái)越熟悉時(shí),你會(huì )發(fā)現,把與指針攪和在一起的"類(lèi)型"這個(gè)概念分成"指針的類(lèi)型""指針所指向的類(lèi)型"兩個(gè)概念,是精通指針的關(guān)鍵點(diǎn)

評論 (0 個(gè)評論)

facelist

您需要登錄后才可以評論 登錄 | 立即注冊

關(guān)于我們  -  服務(wù)條款  -  使用指南  -  站點(diǎn)地圖  -  友情鏈接  -  聯(lián)系我們
電子工程網(wǎng) © 版權所有   京ICP備16069177號 | 京公網(wǎng)安備11010502021702
返回頂部
午夜高清国产拍精品福利|亚洲色精品88色婷婷七月丁香|91久久精品无码一区|99久久国语露脸精品|动漫卡通亚洲综合专区48页