栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

符号常量,const限定符

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

符号常量,const限定符

#define INT_MAX 32767

        在cpp编译过程中,首先将源代码传递给预处理器。在这里,#define和#include一样,也是一个预处理器编译指令。该编译指令告诉预处理器:在程序中查找INT_MAX,并将所有的INT_MAX都替换成32767。因此#define编译指令的工作方式与文本编辑器或字处理器中的全局搜索并替换命令相似。修改后的程序将在完成这些替换后被编译。预处理器查找独立的标记(单独的单词),跳过嵌入的单词。也就是说,预处理器不会将PINT_MAXTM替换为P32767TM。也可以使用#define来定义自己的符号常量,然而#define编译指令是C语言遗留下来的,cpp有一种更好的创建符号常量的方法,使用关键字const,所以不会经常使用#define,然而,有些头文件,尤其是那些被设计成可用于c和cpp中的头文件,必须使用#define。

        符号名称指出了常量表示的内容,另外,如果程序在多个地方使用同一个常量,则需要修改该常量时,只需修改一个符号定义即可。可以使用const关键字来修改变量声明和初始化,如

const int Months=12;

常量被初始化后,其值就被固定了,编译器将不允许再修改该常量的值。g++将指出程序试图给一个只读变量赋值,关键字const叫做限定符,因为它限定了声明的含义。一种常见的做法是将名称的首字母大写,已提醒Months是个常量,另一种约定是将整个名称大写,使用#define创建常量时通常使用这种约定,创建常量的通用格式如下:

const type name = value;

如果在声明常量时没有提供值,则该常量的值将是不确定的,且无法修改。const比#define好,首先,它能够明确指出类型。其次,可以使用cpp的作用域规则将定义限制在特定的函数或文件中,第三,可以将const用于更复杂的类型。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/738073.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号