博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
const与指针
阅读量:4694 次
发布时间:2019-06-09

本文共 1332 字,大约阅读时间需要 4 分钟。

在定义指针的时候我们可以用const来修饰

根据const出现的位置和出现的次数分为三种

1.指向常量的指针

2.常指针

3.指向常量的常指针

 

1.指向常量的指针

1 #include
2 using namespace std; 3 4 int main() 5 { 6 int a = 3,b = 6; 7 //指向常量的指针 8 //p是一个变量可以改变它所指的对象,但不可以通过它改变其所指对象的值 9 const int *p = &a;10 cout << a << " " << b << " " << *p << endl;11 // *p = 2; 不允许的 12 a = 2;13 cout << a << " " << b << " " << *p << endl;14 p = &b;15 cout << a << " " << b << " " << *p << endl;16 return 0;17 }

 

2.常指针

1 #include
2 using namespace std; 3 4 int main() 5 { 6 int a = 3,b = 5; 7 int *const p = &a; 8 // 常指针 9 // 也就是指针p为一个常量,我们就不可以改变其所指的对象。10 // p = &b; 是不允许的11 // 但是p所指的是一个变量,我们可以通过p来改变其所指对象的值 12 cout << a << " " << b << " " << *p << endl;13 //p = &b是不允许的 14 *p = 9;15 cout << a << " " << b << " " << *p << endl; 16 return 0; 17 }
View Code

 

3.指向常量的常指

1 #include
2 using namespace std; 3 4 int main() 5 { 6 int a = 3,b = 5; 7 const int *const p = &a; 8 // 指向常量的常指针 9 // 此处p是一个常量,也就是不能改变其所指的对象10 // 而且p指向的对象不能通过p来改变所指对象的值11 // p = &b 和*p = 2;都是不允许的12 cout << a << " " << b << " " << *p << endl; 13 a = 110;//这个是可以的 14 cout << a << " " << b << " " << *p << endl;15 return 0;16 }
View Code

 

转载于:https://www.cnblogs.com/mch5201314/p/11566712.html

你可能感兴趣的文章
Linux下安装Tomcat
查看>>
windows live writer 2012 0x80070643
查看>>
tomcat 和MySQL的安装
查看>>
git常用操作
查看>>
京东SSO单点登陆实现分析
查看>>
u-boot启动第一阶段
查看>>
MySQL批量SQL插入性能优化
查看>>
定义列属性:null,default,PK,auto_increment
查看>>
用户画像展示
查看>>
C#中StreamReader读取中文出现乱码
查看>>
使用BufferedReader的时候出现的问题
查看>>
批处理文件中的路径问题
查看>>
hibernate出现No row with the given identifier exists问题
查看>>
为什么wait()和notify()属于Object类
查看>>
配置NRPE的通讯
查看>>
shp系列(一)——利用C++进行shp文件的读(打开)与写(创建)开言
查看>>
匹配两个空格之间的字符。。。
查看>>
CSS 文字溢出 变成省略号 ...
查看>>
Spring事务
查看>>
java编程基础(三)流程控制语句
查看>>