首页 >
预处理
✍ dations ◷ 2025-02-23 19:50:44 #预处理
在计算机科学中,预处理器是程序中处理输入数据,产生能用来输入到其他程序的数据的程序。输出被称为输入数据预处理过的形式,常用在之后的程序比如编译器中。所作处理的数量和种类依赖于预处理器的类型,一些预处理器只能够执行相对简单的文本替换和宏展开,而另一些则有着完全成熟的编程语言的能力。一个来自计算机编程的常见的例子是在进行下一步编译之前,对源代码执行处理。在一些计算机语言(例如: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)使用。
相关
- 支气管肺炎肺炎(pneumonia),是指肺部出现发炎的症状,主要是肺泡受到影响。肺炎常见的症状包括有痰的咳嗽、胸痛、发热及呼吸困难。症状可能由轻微到严重不一。特别高龄的长者或新生儿可能
- 根瘤菌目橙单胞菌科 Aurantimonadaceae 巴通体科 Bartonellaceae 拜叶林克氏菌科 Beijerinckiaceae 慢生根瘤菌科 Bradyrhizobiaceae 布鲁氏菌科 Brucellaceae 生丝微菌科 Hyphomicr
- 苯佐卡因苯佐卡因(Benzocaine),又称“阿奈斯台辛”(Anaesthesine),学名对氨基苯甲酸乙酯。无色或白色斜方结晶粉末。无臭,味微苦,后有麻醉感。遇光逐渐变色。难溶于水,微溶于脂肪油,溶于稀酸、
- 一次性一次性使用运载系统也称不可重复使用之运载系统,使用一次性的运载火箭把载荷发射入太空。顾名思义,一次性的运载火箭火箭只使用一次,火箭的各部件发射后不会被回收并用于其他的
- 钻石A型运载火箭钻石号系列运载火箭(法语:Diamant 意为钻石),为法国第一个完全自行研制的火箭,是一不可重复使用的卫星发射系统且不由美国或苏联协助建造,钻石号系列运载火箭为其后的欧罗巴运载火
- 秋千秋千 (闽南语、广东话称千秋)是靠一人或多人在游戏者的背后,推动游戏者,或自己利用绳索的前后摆荡,让游戏者的身体随秋千上下起落的一种游戏。通常两条绳索末端系一块木板、轮胎
- 若望二十三世教宗圣若望二十三世(拉丁语:Sanctus Ioannes PP. XXIII,1881年11月25日-1963年6月3日),原名安杰洛·若瑟·龙嘉利(意大利语:Angelo Giuseppe Roncalli);于1958年10月8日至1963年6月3日
- 美国国会图书馆坐标:38°53′12.64″N 77°0′16.7″W / 38.8868444°N 77.004639°W / 38.8868444; -77.004639国会图书馆(英语:Library of Congress,简称LOC),位于美国华盛顿,是美国国会的附属
- 人造子宫人工子宫(或人造子宫;英语:Artificial uterus; 或英语:Artificial womb),是一种设想中的技术设备,模拟女性子宫的环境,孕育胎儿,从而达至真正的无痛生育繁殖的效果。
- 双标图双标图(Biplots)是一类统计学的统计图形。双标图可以同时把抽样和资料矩阵变量中的数据用图表表示出来。抽样样本可以用向量、线性轴和非线性轨迹表达。在类别变量的案例中,类