1、#define宏定义
以#号开头的都是编译预处理指令,它们不是C语言的成分,但是C程序离不开它们,#define用来定义一个宏,程序在预处理阶段将用define定义的来内容进行了替换。因此在程序运行时,常量表中并没有用define定义的常量,系统不为它分配内存。define定义的常量,预处理时只是直接进行了替换,,它用来将一个标识符定义为一个字符串,该标识符被称为宏名,被定义的字符串称为替换文本。,因此在编译时它不对宏的定义进行检查,作用域不影响对常量的访问 。它的常量值只能是字符串或数字。 该命令有两种格式:一种是简单的常量宏定义, 另一种是带参数的宏定义。

不带参数的宏:#define< 名字 >< 值 > 要注意,没有结尾的分号,因为不是C的语句,名字必须是一个单词,值可以是各种东西,宏定义是用宏名来表示一个字符串,在宏展开时又以该字符串取代宏名,这只是一种简单的代换,字符串中可以含任何字符,可以是常数,也可以是表达式,预处理程序对它不作任何检查。如有错误,只能在编译已被宏展开后的源程序时发现。
注意.宏定义不是说明或语

本文介绍了C语言中的宏定义和枚举类型。宏定义通过#define实现文本替换,分为不带参数和带参数两种,用于提高程序运行效率并方便维护。枚举是一种用户定义的数据类型,包含命名的整型常量,可用于创建有序的常量集合,枚举成员默认从0开始递增,可以作为switch-case结构的良好选择。枚举和宏在某些场景下可以互为替代,但枚举具有类型安全性。

最低0.47元/天 解锁文章
790

被折叠的 条评论
为什么被折叠?



