黑马程序员技术交流社区
标题: 预处理指令的概念 [打印本页]
作者: hugin 时间: 2016-9-21 14:53
标题: 预处理指令的概念
定义:以“#” 开头的一些特殊的指令
作用:
在编译之前做些处理(宏定义,条件编译,文件包含)
常见的预处理指令: 宏
宏:特殊的标示符
宏替换 :在编译之前,在源文件中,所有出现宏名的地方 都用宏代表的字符串 去替换
注意:宏不是语句,不需要分号结束
作者: hugin 时间: 2016-9-21 14:56
//------------------文件包含
#include <> 导入系统头文件
#include "" 导入自定义头文件
相当于 把.h头文件的内容(声明) copy到当前位置
//--------------------宏定义
typedef int M; // ---> M是一个类型 代替了 int类型 编译后,运行时
#define N int // -----> 简单的替换 用N 替换了 int -ko前/中
褐色---> 预处理指令 (编译的时候处理的)
#define ----> 简单的替换 N
M num = 10; //M是类型
N num1 = 11; //可以的 N实际上就替换了int int num1 = 11;
1)无参宏
#define 宏名 宏代表的内容
#define M 10
#define AREA 3.14*M*M
#define PI 3.14
2)有参宏
//如果使用宏定义比较2个值的大小? (理解)
#define MAX(a,b) a>b ? a : b
//如何用宏定义实现2个值相加? (理解)
#define SUM(a,b) a+b
//如何使用宏定义实现2个变量的值的交换? (了解)
#define CAG(num1,num2) {int temp = num1;num1 = num2;num2 = temp;}
#undef 宏名 结束此宏定义
习惯全大写,使用的时候注意颜色
作者: hugin 时间: 2016-9-21 15:12
这里的只要理解就好
作者: 151678537 时间: 2016-9-21 19:29
加uuuuuuu
作者: will123 时间: 2016-9-21 22:49
你们学的真快。。。。
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) |
黑马程序员IT技术论坛 X3.2 |