c 學習筆記 六 陣列指標

2021-07-15 09:40:15 字數 1369 閱讀 2466

這是最有可能的,讀者有可能不理解本章內容直到學相關c++指標的章節學習。

因此,假如有c++指標位的理解,那麼陣列名是乙個常量指標陣列的第乙個元素。因此,在宣告:

double

balance[50

];

double*p

;double

balance[10

];p

=balance

;

它是合法的使用陣列名作為常量指標,反之亦然。因此, *(balance + 4)是訪問balance[4]資料的另一種合法方法。

一旦儲存第乙個元素的位址在p上,就可以使用 *p, *(p+1), *(p+2) 等訪問陣列元素。下面是該例子,以顯示所有上面討論的概念:

#include

using

namespace

std;

intmain ();

double*p

;p =balance

;// output each array element's value

cout

<<

"array values using yiibaier "

<<

endl

;for

(inti =

0;i <5;

i++)cout

<<

"array values using balance as address "

<<

endl

;for

(inti =

0;i <5;

i++)return0;

}

讓我們編譯和執行上面的程式,這將產生以下結果:

array

values

using

yiibaier

*(p +0

):1000

*(p +1

):2*(

p +2)

:3.4

*(p +3

):17*(p +

4):50

array

values

using

balance

asaddress

*(balance +0

):1000

*(balance +1

):2*(

balance +2

):3.4*(

balance +3

):17*(

balance +4

):50

在上述的例子中,p是乙個指標指向double,這意味著它可以儲存double型別的變數的位址。一旦我們有了p的位址,*p可在儲存在p上的位址,如上述的例子。

C語言學習筆記 指標 指標陣列與陣列指標

指標陣列 是乙個陣列,陣列元素為指標 陣列指標 是乙個指標,指向陣列的指標 例如 int p1 5 int p2 5 對於語句int p1 5 因為 的優先順序要比 要高,所以 p1 先與 結合,構成乙個陣列的定義,陣列名為 p1,而 int 修飾的是陣列的內容,即陣列的每個元素。也就是說,該陣列包...

C 筆記 C 陣列指標和指標陣列

char p 10 為陣列指標,實際上相當於二維陣列,也就是指向乙個一維陣列的指標 p可以單獨看做指向陣列的指標 比如這樣 int b 2 int cc 2 2 1,2 3,4b cc b cout 這樣的賦值是可以的,b指向的陣列的大小一定要和cc的第一維陣列大小一致,這裡輸出,4,因為b 這個時...

C 學習筆記4 陣列與指標

陣列和指標 1.int pi 0 pi不指向任何物件。指標最好應初始化,如果須分開定義指標和其所指向的物件,則將指標初始化為0.2.把int型變數賦給指標是非法的,儘管此int型變數的值可能為0.但允許把數值0或在編譯中可獲得0值的const量賦給指標。3.如果把指向const的指標理解為 自以為指...