在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
芯片精品文章合集(500篇!)    创芯人才网--重磅上线啦!
查看: 2234|回复: 0

[资料] 符号常量的定义

[复制链接]
发表于 2016-4-7 15:11:44 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x

在程序中经常使用一些惟一的常量。这些常量在程序中会反复出现在数字的位置上。这种常量的一个示例是3.142,它表示数字常量“pi”的数值。我们将面对两个问题:

(1)
程序的修改问题;

(2)
程序的理解问题。

可修改性

我们可能想把“pi”的值从3.142修改为3.14159以提高计算的精度。在这种情况下,我们可能要查遍这个程序,显示地修改该常量的值。如果有任何遗漏,程序将产生灾难性的输出。

可理解性

当一个数值出现在程序中时,其作用往往并不是很明显,尤其是相同数值在不同的地方表示不同的事情时更是如此了。

给经常常量赋予一个符号名后,就可以使我们从这些问题中解脱出来。例如,我们可以用STRENGTH来定义学生的数量,用PASS_MARK来定义某课程及格的分数。在程序的开始处就将常量值赋给这些名称。这样,程序中就可以直接使用STRENGTHPASS_MARK来代替相应的常量值。常量的定义如下:

#define symbolic_name value of constant

以下是一些合法的常量定义示例:

#define STRENGTH 100

#define PASS_MARK 50

#define MAX 200

#define PI 3.14159

符号名有时又称为常量标识符。由于符号名是常量,因此他们不是出现在声明语句段中。用#define语句定义符号常量时,应遵循以下规则:

(1)符号名具有与变量名相同的形式。

(2)在“#”与define之间不允许有空格。

(3)#”必须位于该行的第一个字符。

(4)#define与符号名、符号名与常量之间需要有一个空格。

(5)#define语句末尾不能有分好。

(6)一经定义后,在程序中的其他地方就不允许再用赋值语句给该符号名赋给任何其他值了。

(7)符号名不用声明为某种数据类型。其数据类型取决于常量的类型。也就是说,常量的类型就是符号名的类型。

(8)#define语句可以出现在唉程序的任意位置,但必须位于使用它之前。

#define语句是一个预处理编译器命令,是迄今为止所介绍的功能最强的指令。

凌阳教育,全国唯一一家原厂式嵌入式培训机构,专业从事嵌入式人才培训13年,最近新开课程信息安全工程师培训,想了解更多嵌入式资料下载或者是凌阳教育的动态,请访问凌阳教育官网www.sunplusedu.com


您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /2 下一条

小黑屋| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-5-10 19:50 , Processed in 0.025032 second(s), 7 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表