写点什么

#define 定义标识符——定义宏——替换规则——##的作用—

  • 2022 年 5 月 04 日
  • 本文字数:413 字

    阅读完需:约 1 分钟

FILE //进行编译的源文件


LINE //文件当前的行号


DATE //文件被编译的日期


TIME //文件被编译的时间


STDC //如果编译器遵循 ANSI C,其值为 1,否则未定义


《一线大厂 Java 面试题解析+后端开发学习笔记+最新架构讲解视频+实战项目源码讲义》无偿开源 威信搜索公众号【编程进阶路】 这些预定义符号都是语言内置的。


#define 定义标识符


语法:


#define name stuff


如:


#define MAX 1000


#define CASE break;case


#define SQUARE(X) ((X)*(X))//多个()使其为最安全的形式,会避免很多 bug


//若 stuff 过长,可以写成几行,用''连续


注意: 参数列表的左括号必须与 name 紧邻。 如果两者之间有任何空白存在,参数列表就会被解释为 stuff 的一部分。


#define 替换规则


1.在调用宏时,首先对参数进行检查,看看是否包含任何由 #define 定义的符号。如果是,它们会被替换。


2.替换后被插入到程序中原来文本的位置,对于宏,参数名被他们替换。


3.最后,再次扫描,看看是否包含任何由 #define 定义的符号。如果是,重复上述过程。

用户头像

还未添加个人签名 2022.04.13 加入

还未添加个人简介

评论

发布
暂无评论
#define定义标识符——定义宏——替换规则——##的作用—_Java_爱好编程进阶_InfoQ写作社区