C++学习--const修饰指针

Posted 殇堼

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C++学习--const修饰指针相关的知识,希望对你有一定的参考价值。

const修饰指针有三种情况:
1.const修饰指针-----常量指针
const int *p =&a;
特点:指针的指向可以改,但是指针指向的值不可以修改
例如:
int a=10;
int b=10;
int *p=&a;//指针p指向a,也就是10
修改:
*p=11;//将指针p转向指向11,会报错,原因是更改了指针指向的值
p=&b;//指针的指向可以改。由a转向b。

2.const修饰 常量------指针常量
int *const p =&a;
特点:指针的指向不可以修改,指针指向的值可以修改

3.const即修饰指针又修饰常量
const int * const p =&a;
特点:指针的指向和指针指向的值都不可以改

记忆方法:通过指针和常量的位置记忆;常量const修饰的才可以修改。

#include <iostream>
using namespace std;

int main() {
	//1.const修饰指针 常量指针
	//指针的指向可以修改,值不可以改
	int a = 1;
	int b = 2;
	const int *p = &a;//指针指向的内存地址,因此需要在变量前加上&
	//*p = 2;//错误
	p = &b;//指针指向可以改为b

	//2.const修饰常量 指针常量。指针的指向不可以修改,值可以改。
	int * const p2 = &a;
	*p2 = 2;
	//p2 = &b;//错误,指针指向不可以改为b
	system("pause");
}

以上是关于C++学习--const修饰指针的主要内容,如果未能解决你的问题,请参考以下文章

C++指针常量和常量指针,const修饰函数。

C++指针常量和常量指针,const修饰函数。

C++指针常量和常量指针,const修饰函数。

C++之const关键字的基本使用

C++学习笔记关于const int* int const * int* const

C++ const 修饰符