03 C++语言---预处理器

预处理宏 含义
#if 表达式 是常量表达式。检查标识符是否被定义为宏名。
#ifdef 检查宏是否已经被定义
#ifndef 检查宏是否未定义
#elif 表达式 是常量表达式。检查标识符是否被定义为宏名。
#else 条件不成立时使用
#endif 结束条件编译块
#define 指令将标识符 定义为宏(macro),即指示编译器以将在它之后出现的所有标识符 都替换为替换列表,而它也可以被进一步处理。如果该标识符已被定义为任何类型的宏,那么除非这些定义都相同,否则程序非良构。
#undef #undef 指令取消定义标识符 ,即取消 #define 指令所作的标识符 定义。如果标识符未关联到宏,那么忽略该指令。
#include 用于将其他文件的内容插入到当前文件中。它通常用于包含头文件
#line 可以更改编译器报告错误时显示的行号和文件名
#error 实现在遇到 #error 指令后,显示消息 诊断消息 ,并令程序非良构(停止编译)。<br /同 (1) ,除了不影响程序的合法性并且编译继续。
#warning 生成编译时警告(部分编译器支持)
相关推荐
小马过河R13 分钟前
EdgeOne深度解析:从原理、适用场景到COS接入的技术逻辑
java·开发语言·前端·spring·cos
多弗朗皮卡丘21 分钟前
C++ 红黑树
开发语言·c++·红黑树
ZoeLandia31 分钟前
TypeScript 04:类型断言与类型守卫
开发语言·前端·typescript
geovindu44 分钟前
rust: pool Pattern
开发语言·后端·设计模式·rust·对象池简写模式
曼巴UE51 小时前
UE 属性同步
网络·c++·ue5
无忧.芙桃1 小时前
图的精髓:邻接矩阵与遍历全解析
c++·算法·面试·深度优先·广度优先
jimy11 小时前
标准的动态类型定义与“多态”无关,非多态对象同样会出现动态类型不同于静态类型的情形
开发语言·c++
冬、不眠的夜1 小时前
Nuitka 将 python 程序编译成 exe 指南
开发语言·python
CVer儿1 小时前
起源1引擎相关知识点2--World Brush+func_detail
开发语言
MOONICK1 小时前
COM 组件技术(三)
c++·windows