mooc课程精选,成品人片观看入口众乐乐,久久久久人妻一区精品性色av,苍兰诀大结局是什么,白丝美女被狂躁免费视频网站

當(dāng)前位置:IT培訓(xùn) > 華清遠(yuǎn)見教育科技集團 > 嵌入式學(xué)習(xí) > 講師博文 > 指針數(shù)組與數(shù)組指針
指針數(shù)組與數(shù)組指針
時間:2018-03-09作者:華清遠(yuǎn)見

一、 指針數(shù)組

定義:指針數(shù)組可以說成是”指針的數(shù)組”,首先這個變量是一個數(shù)組,其次,”指針”修飾這個數(shù)組,意思是說這個數(shù)組的所有元素都是指針類型,在32位系統(tǒng)中,指針占四個字節(jié)。

Char *array[5] = {“welcome”,”to”,”wuhan”,”guanggu”,“now”};

//array就是我們定義的一個指針數(shù)組,它有四個元素,每個元素是一個char *類型的指針,這些指針存放著其對應(yīng)字符串。

我們可以寫成:

Char *(array[5])= {“welcome”,”to”,”wuhan”,”guanggu”,“now”};

指數(shù)數(shù)組

這個指針數(shù)組的長度為20個字節(jié),因為每個數(shù)組元素里存放的都是一個指針,指針的長度就是四個字節(jié)。

指陣數(shù)組

數(shù)組里面的每一個成員都保存著一個字符串的地址,每個字符串都存在內(nèi)存的常量區(qū)。

一、 數(shù)組指針

定義:數(shù)組指針可以說成是”數(shù)組的指針”,首先這個變量是一個指針,其次,”數(shù)組”修飾這個指針,意思是說這個指針存放著一個數(shù)組的首地址,或者說這個指針指向一個數(shù)組的首地址。

首先來定義一個數(shù)組指針,既然是指針,名字就叫pa

char (*pa)[5];

如果指針數(shù)組和數(shù)組指針這倆個變量名稱一樣就會是這樣:char *pa[5]和char (*pa)[5],原來指針數(shù)組和數(shù)組指針的形成的根本原因就是運算符的優(yōu)先級問題,所以定義變量是一定要注意這個問題,否則定義變量會有根本性差別!

pa是一個指針指向一個char [5]的數(shù)組,每個數(shù)組元素是一個char類型的變量,所以我們不妨可以寫成:char[5] (*pa);這樣就可以直觀的看出pa的指向的類型,不過在編輯器中不要這么寫,因為編譯器根本不認(rèn)識,這樣寫只是幫助我們理解。

既然pa是一個指針,存放一個數(shù)組的地址,那么在我們定義一個數(shù)組時,數(shù)組名稱就是這個數(shù)組的首地址,那么這二者有什么區(qū)別和聯(lián)系呢?

char a[5];

a是一個長度為5的字符數(shù)組,a是這個數(shù)組的首元素首地址。既然a是地址,pa是指向數(shù)組的指針,那么能將a賦值給pa嗎?答案是不行的!因為a是數(shù)組首元素首地址,pa存放的卻是數(shù)組首地址,a是char 類型,a+1,a的值會實實在在的加1,而pa是char[5]類型的,pa+1,pa則會加5,雖然數(shù)組的首地址和首元素首地址的值相同,但是兩者操作不同,所以類型不匹配不能直接賦值,但是可以這樣:pa = &a,pa相當(dāng)與二維數(shù)組的行指針,現(xiàn)在它指向a[5]的地址。

這里有個有意思的話題值得探討一下:平時我們定義指針不都

是在數(shù)據(jù)類型后面加上指針變量名么?這個指針pa 的定義怎么不是按照這個語法來定義的呢?也許我們應(yīng)該這樣來定義pa:

int (*)[5] pa;

int (*)[5]是指針類型,pa 是指針變量。這樣看起來的確不錯,不過就是樣子有些別扭。其實數(shù)組指針的原型確實就是這樣子的,只不過為了方便與好看把指針變量pa 前移了而已。你私下完全可以這么理解這點。雖然編譯器不這么想。


發(fā)表評論

全國咨詢電話:400-611-6270,雙休日及節(jié)假日請致電值班手機:15010390966

在線咨詢: 曹老師QQ(3337544669), 徐老師QQ(1462495461), 劉老師 QQ(3108687497)

企業(yè)培訓(xùn)洽談專線:010-82600901,院校合作洽談專線:010-82600350,在線咨詢:QQ(248856300)

Copyright 2004-2018 華清遠(yuǎn)見教育科技集團 版權(quán)所有 ,京ICP備16055225號,京公海網(wǎng)安備11010802025203號

有位老師想和您聊一聊