int * const p   常量类型的指针,只能指向一个变量,不可更改 ,可以相互改变值

#include<iostream>
using namespace std;
int main(){
    int a=1;
    int b=2;
    const int c=3;
    const int d=4;
    int  *const p=&a;
    int  *const p=&c; //x 
	p=&b; //× 
	a++; //√ 
	++*p; //√ 
	cout<<a<<endl<<*p;
	return 0;
}

  

const int *p   指向常量的指针,不可改变值;如果指向变量,可以通过改变变量的值来改变*p的值,反之不行

#include<iostream>
using namespace std;
int main(){
    int a=1;
    const int b=3;
	const int *p=&a;
	a++;   //√ 
    *p++; //x 
	cout<<a<<endl<<*p;
	return 0;
}

int const *p 感觉同上

#include<iostream>
using namespace std;
int main(){
    int a=1;
    int b=2;
    const int c=3;
    const int d=4;
    int const  *p=&c;
    p=&d; //√
//	p=&b; //√ 
//	b++; // √ 
//	++*p; // x 
	cout<<c<<endl<<*p;
	return 0;
}