一. 一级指针
const int *p; //润饰*p
int const *p; //润饰*p
int *const p; //润饰p
const int *const p; //第一个润饰*p,第二个润饰p
A://正确,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; //润饰**p
int const **p; //润饰**p
int *const *p; //润饰*p
int **const p; //润饰p
const int *const*p; //第一个润饰**p,第二个润饰*p
A. // 谬误,const int** = int**
int a = 10;
int *p = &a;
const int **q=&p
B.// 正确,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;
发表回复