1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#include<iostream>
using namespace std;
int main()
{
     
    int m=0;
    const int n=2;//必须初始化其n不可修改 如像常量一样
//  n=3;错误
    const int *ptr1 = &m;
    int a=2;
    ptr1=&a;
//  *ptr1=2; 指针所指地址的值不可改变
    int b=3;
     
    int * const ptr2=&b;
     
    *ptr2=2;
//  ptr2=&a;指针所指地址不可改变
     
    const int  c=0;
    const  int * const ptr3=&c;
//  ptr3=&b;指针所指地址不可改变
//  *ptr3=2;指针所指地址的值不可改变
 
    return 0;
 }

  有时候我们希望定义这样一种变量,它的值不能被改变,在整个作用域中都保持固定可以使用const关键字对变量加以限定。

帮助记忆:const 离变量名近就是用来修饰指针变量的,离变量名远就是用来修饰指针指向的数据,如果近的和远的都有,那么就同时修饰指针变量以及它指向的数据。