预处理

✍ dations ◷ 2025-11-24 21:15:01 #预处理
在计算机科学中,预处理器是程序中处理输入数据,产生能用来输入到其他程序的数据的程序。输出被称为输入数据预处理过的形式,常用在之后的程序比如编译器中。所作处理的数量和种类依赖于预处理器的类型,一些预处理器只能够执行相对简单的文本替换和宏展开,而另一些则有着完全成熟的编程语言的能力。一个来自计算机编程的常见的例子是在进行下一步编译之前,对源代码执行处理。在一些计算机语言(例如:C语言)中有一个叫做预处理的翻译阶段。词法预处理器是最低级的预处理器,因为它们只需要词法分析,也就是说,它们在语法分析处理之前,根据用户定义的规则,进行简单的词法单元替换。典型的词法预处理器产生宏替换,包含其他文件的文本,并且条件性地编译或者包含文件。最常见的例子是C预处理器,采用以'#'为行首的指示。因为它不知道底层语言,它的使用被批评并且它的许多功能被其它语言直接内建。例如,宏替换被显式内联和模板替代,包含变为编译期导入(compile-time import,这需要在目标代码中预先保存类型信息,使这个功能无法改进一个语言);条件编译被if-then-else和死代码消除替代。其他词法预处理器包括一般用途的m4,最常用的跨平台构建系统,比如autoconf,和开源的宏处理器GEMA,操作上下文模式。句法预处理器是由Lisp家族语言引进的。它们的作用是根据若干用户定义的规则转换语法树。对于某些程序语言,这些规则是使用同一种语言来写的(compile-time reflection)。这就是Lisp和OCaml的情况。某些编程语言依靠一个完全的外部语言来定义转换,例如XSLT处理器处理XML的方式,或与静态类型的对应语言CDuse。静态处理器常被用来自定编程语言的语法,并透过增加新的primitives或嵌入特定领域语言(Domain-Specific Programming Language)到一般用途的语言里来扩展。关于自定义语法的一个好例子是在OCaml编程语言里两个不同语法的存在。程序可能平常地由“正常语法”或“校正过的语法”写成,并且按需求由两者之一进行程序优化类似地,一些OCaml语言写成的程序借由新运算符的增加来自定化语言的语法。对于从宏扩展语言最好的示例可在LISP语言家族里找到。这种语言本身就是简单的动态类型核心模块,Scheme或Common Lisp的标准分配允许了命令或面向对象的程序编辑,静态类型亦如此。几乎所有这些特性都由语法预处理运行,虽然它的“宏扩展”编译阶段由LISP的编译器处理这点很值得一提就是。这仍然可以视为预处理的一种形式,因为它在编译阶段前就进行了。类似地,静态检查、类型安全正规表式或代码生成可能透过宏被加入到OCaml的语法和语义里,如同微线程(亦称为协程或fibers)、单子或透明的XML操作。任何“一般目的预处理器”,例如M4,都可以当成模版引擎(template engine)使用。

相关

  • 军事随着希腊黑暗时代的结束,人口显著增加的同时也恢复了都市文化,以及古希腊城邦的兴起。这些发展迎来了古代时期(公元前800-前480年)。就在这个时候,希腊人也开始组织城邦之间的战争
  • 苯(běn)(Benzene、C6H6、⌬、⏣或PhH)旧称困、焑、㷍、菕等,是一种碳氢化合物,在常温下为一种高度易燃,有香味的无色的液体。同时,苯有高的毒性,也是一种致癌物质。苯是最简单的芳烃
  • 临床微生物学医学微生物学(clinical microbiology)是的一个医学分支,主要关注传染病的预防、诊断和治疗。此外,科学这一领域的研究微生物对健康的改善各种临床应用。有四种微生物是会导致传
  • 铁镁质铁镁质用来形容富含镁元素与铁元素的硅酸盐矿物或岩石,又称基性岩。大多数铁镁质矿物颜色暗并且相对密度大于3。常见的造岩铁镁质矿物包括橄榄石、辉石、闪石和黑云母。常见
  • 俄罗斯联邦航天局name = 'Aero', description = '航空太空科技(航空航天科技)', content = {{ type = 'text', text = [=[本页面没有类似于NoteTA的数量限制。 请自行修改分类名。在NoteTA样板
  • Hsub2/subXeOsub4/sub氙酸(化学式:H2XeO4)由三氧化氙溶于水得到,是很强的氧化剂,用在有机合成中,易爆炸性分解为氙、氧气和臭氧。鲍林在1933年预测了氙酸的存在。
  • 默里·盖尔曼默里·盖尔曼(英语:Murray Gell-Mann,1929年9月15日-2019年5月24日),美国物理学家和美国国家科学院院士。因对基本粒子的系统分类的成功建立及其相互作用的发现而获得1969年诺贝尔
  • 邻苯二甲酸二环己酯邻苯二甲酸二环己酯(英语:Dicyclohexyl phthalate,DCHP)是一种邻苯二甲酸酯,由一个邻苯二甲酸和两个环己醇酯化形成,化学式为 C20H26O4,常作为塑化剂使用。
  • 硬X射线调制望远镜硬X射线调制望远镜(英语:Hard X-ray Modulation Telescope,简称HXMT),又名慧眼,是中国研制的第一个X射线天文卫星,于2017年6月15日11时在酒泉卫星发射中心由长征四号乙运载火箭成功
  • 男雌男雌是一个外来词,来自于英文中的“Hefemale”这个字汇。意指经缩胸手术的女性得到了部分男性的生理特征(胸部),但却已去除掉了部分的女性生殖器。也可说男雌为变性人。