一. 一级指针
const int *p; //润饰*pint const *p; //润饰*pint *const p; //润饰pconst int *const p; //第一个润饰*p,第二个润饰pA://正确,const int* = int*int a = 10 ;const int* p= &a;B://正确 const int* = const int*const int a=10;const int* p=&a;C://正确 int* = int*int a = 10;int *const p =&a;D://谬误 int* = const int*int a = 10;const int *p=&a;int *q = p;
二. 二级指针
const int **p; //润饰**pint const **p; //润饰**pint *const *p; //润饰*pint **const p; //润饰pconst int *const*p; //第一个润饰**p,第二个润饰*pA. // 谬误,const int** = int**int a = 10;int *p = &a;const int **q=&pB.// 正确,int *const* = int**int a = 10;int *p=&a;int *const*q = &p;C.// 正确,int **= int**int a = 10;int *p=&a;int **const q = &p;D.// 谬误,int** = int*const*int a = 10;int *const p=&a;int **q = &p;E.// 谬误,int*const* = const int**int a = 10;const int *p=&a;int *const*q = &p;