指针常量和常量指针
Posted komean
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了指针常量和常量指针相关的知识,希望对你有一定的参考价值。
1、指针常量
指针常量的本质是一个常量,并且使用指针来修饰它。
在C/C++中,其声明格式为:
int *const p1
2、常量指针
常量指针本质是指针,常量修饰它。
在C/C++中,其声明格式有两种方式:
// 第1种方式
const int *p2;
// 第2种方式
int const *p2;
3、指向常量的指针常量
在C/C++中,其声明格式为:
const int *const p3;
4、读法及被修改的方式相关的技巧
- *(指针)和 const(常量) 谁在前先读谁。
int *const p; // 指针常量
const int *q; // 常量指针
- *(指针)象征着地址,const(常量)象征着内容;谁在前面谁就不允许修改。
- 特别注意:指向常量的常量指针,地址和内容都不能修改。
5、案例
(1)指针常量
#include <iostream>
int main()
{
int a = 12;
int b = 13;
// 指针常量
int *const p1 = &a;
/* 内容、地址修改操作 */
*p1 = 13; // 修改内容,操作正确
p1 = &b; // 修改地址,操作错误
return 0;
}
(2)常量指针
#include <iostream>
int main()
{
int a = 12;
int b = 13;
// 常量指针
int const *p2 = &a;
/* 内容、地址修改操作 */
*p2 = 13; // 修改内容,操作错误
p2 = &b; // 修改地址,操作正确
return 0;
}
以上是关于指针常量和常量指针的主要内容,如果未能解决你的问题,请参考以下文章