C primer plus 第六版的403页有较为详细的讲解const
1、const int a=12;
该声明让a成为只读变量,初始化后就不能再改变它的值。
2、在指针声明中使用const
主要是区分是限制指针本身为const还是限制指针指向的值为const
①、const float *pf; //pf指向一个float类型的const值
创建了pf指向的值不能被改变,而pf本身的值可以改变
②、float *const pt;//pt是一个const指针
创建了指针pt的值不能改变。pt必须指向同一个地址,但是pt指向的值可以发生改变。
③、const float *const ptr; 表明ptr既不能指向别的地址,它所指向的值也不能改变。
④、float const *pt //与const float *pt的含义是一样的
总结:const 放到*的左侧的位置,限定了指针指向的数据不能改变;const 放到*的右侧的位置,限定了指针本身不能改变;