摘要:
从source code到可执行程序,一般经历一下步骤:C源码 -》编译预处理-》编译-》连接-》可执行程序本文只讲述编译预处理的故事,编译预处理有三大作用:1、宏定义2、文件包含3、条件编译1、宏定义(1)不带参数的宏定义 define PI 3.1415926宏定义是在编译之前进行处理的,宏定义只是作简单的替换,不做语法检查。宏定义与变量不同,不能被赋值,不分配内存空间,只作字符替换。#define命令出现在函数的外面,宏名的有效范围是从定义到本源文件结束,在需要终止有效范围时,可以用#undef,例如(2)带参数的宏定义•在此种情况下,多使用括号,以免出现错误.有 #define S(r 阅读全文