C语言12_预处理 #
发布日期:2021-05-07 14:37:16 浏览次数:10 分类:原创文章

本文共 1422 字,大约阅读时间需要 4 分钟。

1


@/"...

1> 文件包含(include)

//--------------------------// 书写格式://--------------------------//< >  在系统目录中查找文件 #include <stdio.h>"" 现在工程目录查找,再去系统目录#include "stdio.h"//--------------------------// 作用:复制包含文件到当前文件;//--------------------------//

2> 宏定义(macro)

执行过程: 预处理时, 将代码中所以[替换内容],替换;//--------------------------// 分类:     1> 无参宏     2> 带参宏//--------------------------//#define 0 OFF   // 无分号作用: 定义含义,阅读代码方便;#define MAX(a, b) ((a) > (b) ? (a) : (b))带参宏//--------------------------//

3> 条件编译

3.1> #ifdef

//--------------------------//#ifdef _头文件名_H_ 	[编译内容]#endif//--------------------------//

3.2> #ifndef

//--------------------------//#ifndef _头文件名_H_ #define _头文件名_H_	[编译内容]#endif//--------------------------//

3.3> #if

//--------------------------//#if CFG==1	[编译内容]#endif//--------------------------//#f 后跟整数常量表达式,非零为真//--------------------------//

3.4> #elif

#elif // #else if//--------------------------//#if CFG==1	[编译内容1]#elif CFG==2	[编译内容2]#else	[编译内容3]#endif//--------------------------//

3.5> #if defined ( )

//--------------------------//#if defined (PARM)	[编译内容]#endif//--------------------------//defined: 是预处理运算符;如果 #define PARM,则运算结果为1;如果没定义过 PARM,则运算结果为0//--------------------------///* 编译内容执行 */#define PARM#if defined (PARM)	[编译内容]#endif//--------------------------//可以用C中的关系运算符和逻辑运算符#if !defined(STM32F40_41xxx) && !defined(STM32F427_437xx) && !defined(STM32F429_439xx)#endif //--------------------------//
上一篇:配置电路模块_JTAG接口
下一篇:C语言08_数组[ Array ]

发表评论

最新留言

第一次来,支持一个
[***.219.124.196]2025年04月02日 15时00分29秒