c语言预处理简述 | 您所在的位置:网站首页 › c语言定义带参的宏 › c语言预处理简述 |
预处理(编译预处理指令) 1. 功能:向编译系统发布信息或指令,并在编译前执行 2. 分类:宏文件,文件包含,条件编译及其他 3. 以#开头 宏定义 1. 分类:带参数的,不带参数的 2. 作用:文本替换 3. 带参数:在文本替换前先将字符串中的参数用实参表来替换,类似于函数 4. 没有值的宏#define a这类宏用于条件编译 5. 如果宏的值超过一行,则行末需加\ 6. 预定义的宏 (1) __LINE__此指令所在的行数 (2) __FILE__文件位置 (3) __DATE__日期 (4) __TIME__具体时间 (5) __STDC__ 注:两个下划线_ 文件包含 1. 一般形式:#include #include “” 2. 表示文件在标准目录(include)中,“”表示优先在.c文件目录寻找,然后到标准目录--------自己做的用“” 3. 被包含文件名可以是.c/.h文件 (1) 在定义和使用函数的地方都应该有.h头文件,类似于合同,约束双方 (2) 头文件的作用:保存函数原型,声明全局变量等 (3) 头文件的标准样式(为了避免一个头文件被多次引用) #ifndef 宏名 #define 宏名 声明 #endif 4. 作用:在编译前将源文件全部内容取代该预处理命令 条件编译及其他 1. #if #elif #else #endif与if等语句区别 (1) #if需要#endif结束 (2) #if为条件编译,符合条件被保留,优先级问题 2. #error处理器命令,强迫程序停止 3. #line用于修改__LINE__与__FILE__中的值 4. #ifdef与#ifndef及#endif用来判断是否存在宏名 |
CopyRight 2018-2019 实验室设备网 版权所有 |