如下情況陣列名arr表示整個陣列
1、在定義陣列的同乙個函式中,求sizeof(arr),表示整個陣列的位元組數;
2、在定義陣列的同乙個函式中,&arr+1,加整個陣列;
其他情況陣列名表示陣列首元素的位址
#include //void show(int arr[10])//arr退化成指標,int *
void show(int *arr,int len)
除錯結果:
在使用指標變數時,需要注意以下幾點
(1)使乙個指標變數儲存某個變數的位址,變數的資料型別要與指標型別一致
eg:int a;
int *p=&a;
char c;
p=&c;//int *p=char *,error!
(2)可以將乙個指標變數的賦值給指向相同型別變數的另乙個指標變數
eg:int a;
int *p1;
int *p2;
p1=&a;
p2=p1;
(3)只能對指標變數賦值為變數的位址,不能賦值為表示式的位址
eg:int a=1;
int b=2;
int *p;
p=&(a+b);//error!
(4)不允許把乙個整數賦值給指標變數,兩者資料型別不同
eg:int *p;
p=1000;//error!
指標與陣列,指標陣列 陣列指標
int a 10 print n a p,a p a,a print n a 1 p,a 1 p a 1,a 1 a做乙個指標,步長為4,指向乙個元素,a做乙個指標,步長為40,指向乙個維陣列 int b 3 4 print n b p,b p,b p b,b,b print n b 1 p,b 1...
指標陣列與陣列指標
1.指標陣列 指標陣列中每乙個元素都是乙個指標,也既是存放字串的首位址。所以指標陣列適合處理若干個長度不等的字串。定義的一般形式為 型別說明符 指標陣列名 陣列長度 例如 int p 3 宣告乙個陣列,指標陣列p,由3個int型別指標變數元素組成 從運算子的優先順序分析,由於 的優先順序大於 所以p...
指標陣列與陣列指標
呵呵,實在是厭倦了繞口的解釋。指標陣列,故名思義,就是指標的陣列,陣列的元素是指標 陣列指標,同樣,就是直想陣列的指標。簡單舉例說明 int p 2 首先宣告了乙個陣列,陣列的元素是int型的指標。int p 2 宣告了乙個指標,指向了乙個有兩個int元素的陣列。其實這兩種寫法主要是因為運算子的優先...