1. const int a 和2. int const a 的效果是一样的,都是a是一个常量而不能改变。3. const int *a 是常量指针,不能通过a来修改a所指向对象的值,如const int *a=&b; *a=8(Error),但可以改变a所指向的变量。4. int* const a 是指针常量,可以通过a来修改a所指向对象的值,但不能修改a所指向的地址。5. int const *a const 具有3和4的性质,即既不能修改a所指向的地址,也不能通过a来修改a所指向对象的值。