第2章 预处理器的设计
为了不失一般性,对于一个软件项目来说,需要创建一个(项目)目录,这里命名为“p16ecc”,并在此目录内,创建若干(子)目录,用于存放项目中不同类别的文件,如图2-1所示。

图2-1 项目目录的创建
其中,下述的目录(以及路径)的命名对于以后的项目运行十分重要。
/include:用于存放项目的系统头文件。
/lib:用于存放项目的系统库文件。
/bin:用于存放项目的系统可执行文件。
这些目录名及路径名必须固定,并将其添加到系统环境的设置中,作为以后编译器运行时搜索特定文件时的关键字。
项目中各执行文件/工具的设计,实际上属于项目分支管理。因此,有必要为其各自设置目录。比如,对于预处理器(cpp1.exe)的设计,可以设置专属目录“cpp1_source_1”。
编译器作为系统工具,其各个可执行命令文件应该可在任何文件路径/环境下启动运行。因此,比较常用的方法是将本项目的目录的路径名添加到 Windows 系统环境的设置中(方法参见第1章)。
此外,还有一种方法,即编制一个批处理文件(比如,p16.bat),并将其存放在某个已经处于系统路径的固定目录(比如,C:/tool)中。假设目标编译器设计的文件存放在“F:\”硬盘的“F:\p16ecc”目录中,那么p16.bat批处理文件的内容如下。

此后每次开启Windows的控制台(Command Prompt)时,只需输入p16命令,即可使(目标)编译器处于可运行状态。
注:本章(乃至本书的各章节)将使用各自的目录不断地扩展、深化设计细节。