几组声明:(结合的优先顺序:括号(),[],优于*)可以用来判断以下声明
int *p[10]; //指针数组
int(*p)[10] //数组指针
int(*p)(int) //函数指针
int*p(int) //指针函数
复杂声明:
int(*p[10])(int) //函数指针数组 分析:*p[10]:指针数组 ,()(Int):函数指针
int **p; //二级指针
使用指针的注意事项
I. 指针在使用时最好初始化(可以初始化为NULL,或者已经赋值了的一个变量的地址),因为指针在创建时没有初始化,如果不设置初始化,指针就是野指针,访问野指针会产生不可预料的后果。
II. 改变指针需要传递指针的指针或引用。
III. 指针操作不要超出变量的作用范围,防止野指针。
(以上是比较简单的注意事项,还有关于动态赋值malloc的注意事项)