指標和陣列

2021-06-25 16:56:08 字數 655 閱讀 1437

1)

double* pdata;

double data[5];

pdata=data;//將data中第乙個元素的位址賦給指標pdata.

pdata=&data[1];//將陣列中第二個元素的位址賦予給pdata

pdata=pdata+1;//獲得第三個元素的位址

data[0]        *data

data[1]       *(data+1)

2)double beans[3][4]

方法1:

double* pbeans;

pbeans=&beans[0][0];

pbeans=beans[0];//指標指向陣列中第一行的位址。注意:方法pbeans=beans錯誤,因為beans是二維陣列。問題在於型別不同。前面定義的指標型別是double*,但是陣列beans的型別是double[3][4]。儲存該陣列位址的指標必須是double*[4]型別。c++將陣列的大小與型別聯絡在一起,上面的語句僅當將指標宣告為要求的大小時才合法。

方法2:

double (*pbeans)[4];//此處的圓括號是必需的,否則宣告的將是乙個指標陣列。注意:現在方法pbeans=beans正確!!

3)beans[i][j]

*(*(beans+i)+j)

指標陣列和陣列指標

有關陣列指標和指標陣列容易混淆,本文舉例說明兩者的區別,並加以分析。基本概念 指標 inta 1 int p a 指標的指標 int p2p p 簡單陣列 intb 20 指標陣列 int p 10 指標陣列,含有10個指標元素,即每乙個元素都是乙個指標 陣列指標 int p 10 這個指標用來指向...

指標陣列和陣列指標

理解這兩個概念,當從語言學的語法角度開始,定語 名詞,即 的 語句。指標陣列 指標的陣列 陣列指標 陣列的指標。一 指標陣列 元素為指標的陣列 顧名思義,就是說的首先是乙個陣列吧,然後陣列的元素是指標而已。說明形式為 type pointer array constant1 constant2 co...

指標陣列和陣列指標

該文時自己對指標陣列用法的一點總結,還望高手指點不足原文如下 由於以前對指標陣列不太明白,所以自己寫了 乙個小的測試程式來驗證了自己的猜測,先總結如下 指標陣列,由名字就可以知道的該陣列中的成員都是為指標的。其定義的方法為 char p 5 該初定義乙個包含5個char 型別的陣列的指標,由於p本身...