const

来源:互联网 发布:俄罗斯 苏联 知乎 编辑:程序博客网 时间:2024/04/28 03:07
#include<stdio.h>#include<stdlib.h>//const int *p//int const *p//int * const p//const int *const p//int const * const p//const在*左边,指向的是一个常量//const在*右边,指针是一个常量void main(){int num = 10;num = 20;const int data = 10;//只有初始化的时候可以赋值//data = 20;//报错const int *p = &data;//p是指向常量的指针,只能读不能改写p = #//*p = 3;//报错,提示左值不可修改const int *a = 0;const int b = 1;int c = 1;a = &b;  //ok!  额外:注意不能通过a 来修改 b值a = &c;//ok!   额外:虽然c本身不是一个常量//*a = 2; //erro! 为题就在这里,不能修改通过 *a 所指向的对象值,最后赋值得对象是c,因此不能通过*a 来修改c值。int  *const a;//这里const修饰的是 a ,a代表的是一个指针地址//因此不能赋给a其他的地址值,但可以修改a指向的值//这有点和cont int *a相反的意味,例子就不说了int const *a;//和 const int *a 的意义是相同的 他们两个的作用等价const int * const a;//这个代表a所指向的对象的值以及它的地址本身都不能被改变const int *const a;//a所指向的对象及对象的值均不可改变。//关于const的点滴补充://1、const 对象的地址只能赋值给指向const 对象的指针//2、指向const 对象的指针可以 被赋 以 一个非const 对象的地址//3、指向const 得指针常被用作函数的形式参数,保证被传递给函数的实际对象在函数得实际对象在函数中不会被修改//4、常量在定义后就不能被修改, 所以它必须被初始化。未初始化的常量定义将导致编译错误(上面都是在说明const得问题,所以没有赋值,实际语句中要赋值的)}

原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 包裹退回去了怎么办 qq支付密码错误怎么办 ie8出现闪退怎么办 平板输不了密码怎么办 华硕笔记本键盘打不开怎么办 电脑打不开rar文件怎么办 苹果手机淘宝卡怎么办 淘宝联盟网址打不开怎么办 淘宝买东西卖家不退货怎么办 手机清理后微信打不开视频怎么办 搜索历史已关闭怎么办 微博重新激活怎么办 淘宝直播反应慢怎么办 微信新设备无法登录怎么办 dnf自动连接失败怎么办 APP注册没有成功怎么办 忘记绑定微信号怎么办 淘宝钻石绣被骗怎么办 safari出现闪退怎么办 12123手机号被占用怎么办 12306换手机了怎么办 51串口打开失败怎么办 打开com串口失败怎么办 xp串口打开失败怎么办 台式电脑没光驱怎么办 相机功能用不了怎么办 支付宝登录失败怎么办 淘宝号限制登陆怎么办 海信电视看不了怎么办 淘宝不记得密码怎么办 淘宝号忘记了怎么办 号码注销支付宝怎么办 旺旺号限制登录怎么办 淘宝单被监控了怎么办 晚上手机网速慢怎么办 卖家淘金币怎么办 淘宝不能下单怎么办 淘宝店铺失效了怎么办 淘宝订单没货怎么办 拼多多预售到期怎么办 直通车出价太高怎么办