今天偶然想到了一个问题那就是:const* int p 与 int const* P 两者之间有什么区别?
去网上搜索了一下指针常量 和 常量指针的区别:
指针常量:
指针常量是,首先它是一个常量用指针来修饰它。定义形式为 type* const name
其中 name 只能指向一个地址然后不能改变,但是可以 修改它所指向地址的内容。
常量指针:
常量指针, 首先它是一个指针,用常量来修饰它。定义形式为 const type* name 或 type const* name
其中这个指针所指向的地址内容不能被修改,但这个指针可以指向其他地址。
再交给大家一个记忆的方法:
首先找const 紧接着 const 后面的就是被限制的内容,比如 const type* name ; const 后面是 *name 所以 指针地址上的内容不能被修改 因此它是一个指向常量的指针 即常量指针,再看 type* const name ;const 后面是 name 所以 指针的地址不能被修改,他是一个不能改变的常量,因此他是指针常量。