C/C++预处理宏的总结
1.定义顺序的无关性
#define PI 3.14
#define TWO_PI 2*PI
这两句谁前谁后无所谓,因为预处理器不断迭代来实现宏替换,直到源文件中没有宏了才停止。
2. 宏变量变成字符串
#define str(x) #x
例子:str (teststring) ==> "teststring"
3. 宏变量拼接
#define print(n) printf("%d\n",x##n)
例子:print(20) ==> printf("%d\n",x20)
4. 定义长字符串如何换行
#define url "http://www.baidu.com" \
"?hello=world&ni=hao"
注意编译器会把两个相邻的字符串连接到一起,形成单个字符串。
转载于:https://www.cnblogs.com/guoxiaoqian/p/4338875.html
C/C++预处理宏的总结相关推荐
- C 预处理器 —— __DATE__ # __TIME__ # __FILE__ # __LINE__ # __STDC__ (预处理宏的使用 —— 打印debug信息:)
预定义宏: ANSI C 定义了许多宏.在编程中您可以使用这些宏,但是不能直接修改这些预定义的宏. 宏 描述 __DATE__ 当前日期,一个以 "MMM DD YYYY&quo ...
- python展开 c函数中的宏预处理_C中的预处理宏
C中的预处理宏 宏定义就属于预处理命令的一种.那么,什么是宏呢? 宏:c语言标准允许在程序中用一个标识符来表示一个字符串.标识符就是宏名. 宏替换:宏替换就是宏定义.在编译预处理中,将程序中所有的宏名 ...
- 【C语言】----宏定义,预处理宏
什么是宏? 宏是学习任何语言所不可缺少的,优秀的宏定义可以使得代码变得很简洁且高效,有效地提高编程效率. 宏是一种预处理指令,它提供了一种机制,可以用来替换源代码中的字符串,解释器或编译器在遇到宏时会 ...
- Predefined Shader preprocessor macros //预定义的着色器预处理宏
Predefined Shader preprocessor macros 预定义的着色器预处理宏 Unity defines several preprocessor macros when com ...
- Unity Shader - Predefined Shader preprocessor macros 着色器预处理宏
目录:Unity Shader - 知识点目录(先占位,后续持续更新) 原文:Predefined Shader preprocessor macros 版本:2019.1 Predefined Sh ...
- assert预处理宏与预处理变量
assert assert是一个预处理宏,由预处理器管理而非编译器管理,所以使用时都不用命名空间声明,如果你写成std::assert反而是错的.使用assert需要包含cassert或assert. ...
- cmake(13):构建时设置预处理宏定义以及add_compile_definitions命令详解
目录 1. 说明 1.1 无参宏 1.2 有参宏 2. 使用示例 3. 命令解析 add_compile_definitions 命令 add_definitions 命令 参考链接 1. 说明 宏定 ...
- C语言 | 预处理 | 宏定义 | #define | 定义函数
文章目录 预处理 预处理运算符 宏定义 无参宏定义 带参宏定义 宏定义-定义函数 此文主要介绍宏定义,并在介绍宏定义时举例介绍预处理命令 预处理 参考:C 预处理器 | 菜鸟教程 重要的预处理器指令如 ...
- 关于NOMINMAX这个预处理宏
标准库在<algorithm>头中定义了两个模板函数std::min() 和 std::max().通常用它可以计算某个值对的最小值和最大值.可惜在 Visual C++ 无法使用它们,因 ...
最新文章
- tomcat和idea都占用了8080_IDEA 启动tomcat 端口占用原因以及解决方法( 使用debug模式)...
- java原子更新类_Java内部具有原子更新的动态热交换环境
- [pytorch] Pytorch入门
- mysql复杂查询教程_mysql 复杂查询
- oracle 取mac地址,java执行命令,得到Mac地址
- 【华为云技术分享】云图说 | 初识云耀云服务器,打造“极优、极简”的云上体验
- C++学习笔记系列(一)
- python代码打包成apk反编译_python程序打包和反编译
- 微型计算机普遍采用的数字编码是,计算机原理复习题1
- Windows系统中设置定时开关机方法
- # 研究杂感 × VOSviewer(第四辑)
- win10计算机快捷键设置,win10计算器快捷键设置_w10电脑计算器快捷键怎么添加-win7之家...
- 计算机硬盘格式化三个步骤,格式化计算机的硬盘驱动器步骤
- java html 导出 pdf文件,Java HTML导出PDF (一)
- 使用ls筛选某一天的文件
- 找个免费的天气预报API真难a
- 网络安全漏洞管理十大度量指标
- provide和inject的使用
- python网格搜索优化参数_python - 用于管道的网格搜索参数网格的说明 - SO中文参考 - www.soinside.com...
- 应用于双麦克风小型手持设备的语音降噪方法
热门文章
- 接oracle私活价格,也来记录一下第一次接私活的体验
- 分享适合程序员使用17 张壁纸
- 后端:Spring IOC 知识点总结,写得太好了!
- 别去取悦,心里没你的人
- html桌面图标样式,如何更改图标样式,换桌面图标的方法
- android studio 工程demo例子,Android Studio 实现跑马灯微项目实例
- Vue 3.2 发布了,那尤雨溪是怎么发布 Vue.js 的?
- Linux下编译安装Mysql简单步骤
- 阿里云插件新版发布,多特性助力提升开发者体验
- hadoop学习笔记(二):centos7三节点安装hadoop2.7.0