(1)处理所有的注释,以空格代替

(2)将所有的#define删除,并展开所有的宏定义

(3)处理条件编译指令#if、#ifdef、#elif、#else、#endif

(4)处理#include,展开被包含的文件

(5)保留编译器需要使用的#pragma指令