指標陣列和陣列指標的區別與聯絡 引用和指標(二)

2021-10-04 02:32:01 字數 1096 閱讀 6710

目錄

指標陣列和陣列指標的區別與聯絡

指標陣列

陣列指標

先舉個例子:

乙個有10個指標的陣列:

int *a[10];
乙個指向有10個整型數字陣列的指標:

int(*a)[10];
#include #include int main()

system("pause");

return 0;

}

執行如下:

我之前一直在想陣列指標的應用場景該是什麼呢?因為感覺定製c++規則的大佬,專門定義乙個針對陣列的指標,不知道有啥用,經過對示例的推演,明白了,看來陣列指標和指標陣列連用到一塊兒還真有用,比如,在乙個陣列中放入若干字串,那麼,每個字串是陣列中的元素,我該怎樣快捷的提取陣列中任意乙個字串呢?又該如何快捷的提取到字串中的任意乙個字元呢?而這正是陣列指標所實用的場景:

#include #include using namespace std;

int main()

; //定義了乙個指標陣列,但裡面沒有存放指標變數,而是字串。

const char **p = str;//定義乙個指向指標陣列的陣列指標

printf("指標指向陣列的首字元:%c\n",**p);

printf("指標指向第二個字串的首字元:%c\n", **(p + 1));

printf("指標指向第二個字串:%s\n", *(p+1));

system("pause");

return 0;

}

如上的非常接近的"**p"、「**p+1」、「**(p+1)」、「*(p+1)」分別代表了不同的含義,不同的一級指標和二級指標的變化,來切換是指向下乙個字元還是下乙個字串。

指標陣列 陣列指標 陣列的區別與聯絡!

一 基本定義 1.指標陣列 char arr 4 arr就是我定義的乙個指標陣列,它有四個元素,每個元素是乙個char 型別的指標,這些指標存放著其對應字串的首位址。1 這個指標陣列有多大呢?答案是16個位元組,因為它是乙個指標陣列。這是廢話,正話下面說 每當出現這些問題時,腦子裡一定要第一時間反應...

指標陣列 陣列指標 陣列的區別與聯絡!

本文 與魏波 一 基本定義 1.指標陣列 char arr 4 arr就是我定義的乙個指標陣列,它有四個元素,每個元素是乙個char 型別的指標,這些指標存放著其對應字串的首位址。1 這個指標陣列有多大呢?答案是16個位元組,因為它是乙個指標陣列。這是廢話,正話下面說 每當出現這些問題時,腦子裡一定...

指標陣列和陣列指標的區別

這兩個名字不同當然所代表的意思也就不同。我剛開始看到這就嚇到了,主要是中文太博大精深了,整這樣的簡稱太專業了,把人都繞暈了。從英文解釋或中文全稱看就比較容易理解。指標陣列 array of pointers,即用於儲存指標的陣列,也就是陣列元素都是指標 陣列指標 a pointer to an ar...