c++中指针常量,常指针,指向常量的常指针区分
2016-10-21 15:31
417 查看
const char * myPtr = &char_A;//指向常量的指针
char * const myPtr = &char_A;//常量的指针
const char * const myPtr = &char_A;//指向常量的常量指针
我们可以改变指针变量p所指向的内容,而不能改变p的地址空间,如 添加上p = &b;我们就会发现编译错误!
int const p,比较好记的方法:把 读作pointer to然后从后往前读.
p is a pointer to const int,p是指向常量的指针
**const int const*p
典型例子
①int x=3; const int &y=x;//x=10;正确//y=20;错误,不能改变y的值
②const int x=3;x=5;错误
③int x=3; const int y=x;y=5;错误
④int x=3;const int *y=&x;*y=5;错误
⑤int x=3,z=4;int *const y=&x;y=&z;错误
⑥const int x=3; const int &y=x;y=5;错误
⑦int const a = 3; int p = &a;错误//指针指向const修饰的变量时,应该是const int const *p = &a;***
char * const myPtr = &char_A;//常量的指针
const char * const myPtr = &char_A;//指向常量的常量指针
1.指针常量
**从字面意思可以看出,指针是一个常量,也就是地址不能被修改。#include <iostream> using namespace std; void main() { int a = 10; int const *p = &a; cout<<a<<endl; cout<<*p<<endl; int b = 20; }
我们可以改变指针变量p所指向的内容,而不能改变p的地址空间,如 添加上p = &b;我们就会发现编译错误!
2.指向常量的指针
特点是指针所保存的地址可以改变,然而指针所指向的值却不可以改变。int const p,比较好记的方法:把 读作pointer to然后从后往前读.
p is a pointer to const int,p是指向常量的指针
#include<iostream> #include<stdlib.h> using namespace std; void main() { int i1=30; int i2=40; const int * pi=&i1; printf("%d\n", *pi ) ; //输出是30 pi=&i2; //注意这里,pi可以在任意时候重新赋值一个新内存地址 i2=80; //想想看:这里能用*pi=80;来代替吗?当然不能 printf("%d\n", *pi ) ; //输出是80 system("pause"); }
3 指向常量的常指针
特点是指针所保存的地址不可变,指针所指向的数值也不可变**const int const*p
典型例子
①int x=3; const int &y=x;//x=10;正确//y=20;错误,不能改变y的值
②const int x=3;x=5;错误
③int x=3; const int y=x;y=5;错误
④int x=3;const int *y=&x;*y=5;错误
⑤int x=3,z=4;int *const y=&x;y=&z;错误
⑥const int x=3; const int &y=x;y=5;错误
⑦int const a = 3; int p = &a;错误//指针指向const修饰的变量时,应该是const int const *p = &a;***
相关文章推荐
- [C++基础]018_常量指针和指向常量的指针
- C++中 常量引用、指向常量的指针、常量指针的区别
- 【C/C++】常量指针、指针常量以及指向常量的指针常量
- 【C/C++】常量指针、指针常量以及指向常量的指针常量
- 常指针与指向常量的指针的区分
- C++ 常量指针 指向常量的指针
- [C++基础]018_常量指针和指向常量的指针
- C/C++ 指向常量的指针和常量指针
- 指针数组、数组指针、常指针、指向常量的指针、指针函数、函数指针等概念的区分
- C++指向常量的指针和常指针
- C++ 指向常量的指针与常指针
- c++指向常量的指针和指向变量的指针常量
- 重学C++ 指向常量数据的常量指针
- C++中对常量指针和 指向常量的指针等组合声明的理解
- C++ 学习( 第一天)指针常量和指向常量的指针
- c++ - 常量指针与指向常量的指针
- 【菜鸟C++学习笔记】20.常指针&指向常量的指针&指向常量的常指针
- 指针就算指向了常量也不能修改这个常量
- C++中指向指针的指针
- 一句话区分常量指针和指针常量