1、const int a;
2、const int * a;
3、int * const a;
4、int const *a const;

分别代表什么意思?


1个回答

1、const int a;//  -->a是个整型常量值不可改变
2、const int * a;//  -->a指向一个整型常量,指向的值不可改变
3、int * const a;//  -->a指向的地址不可改变,值可以改变
4、int const *a const;//  -->a本身以及指向的值都不可改变

就这么简单 你可以这样测试

1.const int a;
  a++;//编译错误
2.int b = 5;
  const int *a = &b;
  (*a)++;//编译错误
3.int b = 5;
  int *const a = &b;
  a++//编译错误
4.int b = 5;
  int const *a const = 5;
  a++;//编译错误
  (*a)++;//编译错误