指针总结及注意事项

几组声明:(结合的优先顺序:括号(),[],优于*)可以用来判断以下声明

 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的注意事项)     

你可能感兴趣的:(指针)