1.指向单个变量的指针;
int a,*p;
p=&a;
2.数组的指针
(1)一维数组的指针
int a[10],*p;
p=a;
(2)二维数组的指针
(1)列指针
int a[3][4],*p;
p=&a[0][0]; or p=a[0]; or p=*a;
(2)行指针 (指向数组的指针)
int a[3][4];
int (*p)[4];
p=a;
3.指向函数的指针
int func(int a);
int (*p)(int a);
int a = 5;
p = func;
(*p)(a); //调用
4.指向指针的指针(有时候在想前面的*是不是可以无限写下去……)
1 int a = 5; 2 int* p1, ** p2, *** p3; 3 p1 = &a; 4 p2 = &p1; 5 p3 = &p2; 6 printf("%d", ***p3);