const修饰指针

纲要

  • 常量指针
  • 指针常量
  • 即修饰指针,也修饰常量

常量指针

能改指向,但是值不能改

int num1 = 10;
int num2 = 20;
const int *p=&num1;
p=&num2;// success
*p=20;//error

指针常量

不能改指向,但是能改值

int num1 = 10;
int num2 = 20;
int * const p=&num1;
p=&num2;// error
*p=20;//success

即修饰指针,也修饰常量

都不能改

int num1 = 10;
int num2 = 20;
const int * const p=&num1;
p=&num2;// error
*p=20;//error