本文介绍: C深度解剖,const关键字
下面是本节博客的大纲梳理:
引言
1.const概念
注:这里只是告诉大家const大概的这个属性是这样的,具体会在2.const常见用法中进行详谈。
简介:const首先是一个C中的常用关键字,用来在编译器层面(语法层面)约束修饰对象防止被修改,是一种假常量式防修改,约束性较弱。(这里所说的假常量和弱约束性大家可能不理解,继续往下看会有解释。)
下面对我所说的约束性强弱问题进行解释:在我们计算机当中,其实约束性这个概念并不陌生,比如我们对一个常量字符串进行修改的话,计算机是不允许的,就算编译器没有报错允许编译,那么我们操作系统也不会允许被修改,因为常量字符串存储在我们内存中的常量数据区,这块内存是不可被修改的,这也相对来说属于一种强的约束性。而上面我所说的const关键字具有弱约束性的意思就是,虽然const+变量表示不可以修改,但是也只是处在编译器角度来说的,只是告诉编译器帮我检查一下我往后的代码哈,不能修改该变量哈,如果我修改了告诉我一下哈。大概是这个样子。虽然编译器帮你检查是否修改并且可以为你提供一些警告甚至报错,但是我们仍然可以通过其他方式对该变量的值进行修改,比如指针的方式。
同理,我上面所说的假常量也跟弱约束性一样的意思,不允许就该的数据我们称为常量,但是const+变量表面看起来不可以被修改,实际上,完全可以通过其他方式进行修改。
2.const的常见用法
2.1 const修饰变量
2.2 const修饰数组
2.3 const修饰指针
2.4修饰函数的参数
2.5 const修饰函数的返回类型
3.const意义
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。