预处理区 (preprocessor)


LPC 预处理区 (preprocessor) 手册
(93.07.17 更新)

对 LPC 编译器 (compiler) 而言, 预处理区是源代码的最前端, 它提供以下便利的特性:

前三个与 C 相同. 如果您熟悉 C 语言, 大概只会浏览此份文件的最后几段文字.

说明:


共享的定义和源代码

#include 提供此功能. 说明: #include 语句是以文字命令的方式, 在一个文件中引用另一个文件. 在一个文件中放上像 #include "file.h" 的语句, 就如同 file.h 的内容直接放入 #include 所在的位置. 在每次物件重新编译时, 物件所引用的文件也会重新编译一次. 如果引用的文件里面有变量或函数与此文件中的相同, 编译此文件时会产生双重命名的错误 (duplicate-name error) (如果您把 file.h 的内容放在 #include 的位置, 一样会产生错误).




宏定义将后面源代码中的一些字换成定义的内容. 目的在于隐藏程序内部的细节、减少打字的数量、便于更改常数 (constant). 说明: 范例: 最后, 有时会用到清除定义 (undefine) [让编译器 (compiler) 别理会此定义]. 这样就用到下面的命令. 说明:

编译条件

这些命令可以让您的程序更具有可塑性 (flexibility). 利用 identifier 定义与否, 可以为不同的目的而变化源代码. 用途像是挑选系统管理员连线、支援多个驱动程序 (或不同版本的驱动程序).

语法 :

说明: 范例 1: 范例 2:

除错


#echo 命令让您向驱动程序的 stderr (STanDard ERRor, 标准错误处理) 印出消息. 这项功能在诊断和除错时非常有用. 说明:

特定的编辑器功能


这项是驱动程序内建的功能. 目前可用的 keyword 列在下面:
  使用 #pragma no_keyword 可以关闭指定的功能.

说明:


快速文章格式


这项功能便于求助消息、房间语句等长篇内容使用文章格式. Notes: 在结束标记 (end marker) 之前, 使用 @marker 或 @@marker. 两者之间是您想对使用者显示的文章. 文章以 marker 作为结束, 不必加 @ 或 @@. 使用 @, 文章就如同一个字符串, 换行处加上 \n.  使用 @@,  文章就如同一个字符串数组, 而每一行分别是一个字符串.

范例 1 :

范例 2 :
翻译: Spock @ FF 97.Aug.9.

回到上一页