int *a[10] :陣列指標。陣列a裡存放的是10個int型指標int (*a)[10] :a是指標,指向乙個陣列。此陣列有10個int型元素
int *a[10]
先找到宣告符a,然後向右看,有說明a是個陣列,再向左看,是int *,說明陣列中的每個元素是int *。所以這是乙個存放int指標的陣列。
int(*a)[10]
先找到宣告符a,被括號括著,先看括號內的(優先順序高),然後向右看,沒有,向左看,是*,說明s是個指標,什麼指標?在看括號外面的,先向右看,有 是個陣列,說明a是個志向陣列的指標,再向左看,是int,說明陣列的每個元素是int。所以,這是乙個指向存放int的陣列的指標。
例int *p[10];
int (*q)[10];
printf( "*p[10]: %d\n ", sizeof(p));
printf( "(*q)[10]: %d\n ", sizeof(q));
結果是:
*p[10]: 40 //說明p是乙個陣列名
(*q)[10]: 4 //說明q是乙個指標
結論:1.myarray相當於 a[10]。
#define _crt_secure_no_warnings
#include #include #include void main01()
printf("hello...\n");
system("pause");
return;
}//函式指標語法梳理
//1 如何定義乙個函式型別
//2 如何定義乙個函式指標型別
//3 如何定義乙個 函式指標 (指向乙個函式的入口位址)
int add(int a, int b)
void main()
//定義乙個函式指標型別
//函式指標
system("pause");
}
陣列指標語法梳理
include include include using namespace std 陣列型別基本語法知識梳理 void main int a 10 a代表的是陣列首元素的位址,a代表的是整個陣列的位址 a 1步長是4 a 1步長是40 定義乙個陣列型別 typedef int myarray 1...
函式指標語法梳理
include include include using namespace std 函式指標語法梳理 1 如何定義乙個函式型別 2 如何定義乙個函式指標型別 3 如何定義乙個函式指標 指向乙個函式的入口位址 int add int a,int b void main add 1,2 直接呼叫 函...
指標陣列 陣列指標 函式指標 函式指標陣列
陣列指標 指向陣列的指標,是乙個指標,其指向的型別是陣列 指標陣列 元素為指標的陣列,是乙個陣列,其中的元素為指標。例如 int a 5 這個是陣列指標。int a 5 這個是指標陣列。定義函式指標型別 int max int,int typedef int fun ptr int,int 申明變數...