首页 >
预处理
✍ dations ◷ 2025-11-23 17:22:23 #预处理
在计算机科学中,预处理器是程序中处理输入数据,产生能用来输入到其他程序的数据的程序。输出被称为输入数据预处理过的形式,常用在之后的程序比如编译器中。所作处理的数量和种类依赖于预处理器的类型,一些预处理器只能够执行相对简单的文本替换和宏展开,而另一些则有着完全成熟的编程语言的能力。一个来自计算机编程的常见的例子是在进行下一步编译之前,对源代码执行处理。在一些计算机语言(例如: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)使用。
相关
- 人均寿命平均寿命、生命期望或预期寿命(英语:life expectancy),指生物群体中衡量单一生命存活平均长度的统计量。预期寿命最常用的测量方法是自出生起算(英语:Life expectancy at birth,LEB
- 台湾温泉台湾有温泉征兆的温泉区有128处,以温泉区地质来看,变质岩区最多,其次为火成岩区,沉积岩区最少。以化学特性分类,台湾温泉大多属于碳酸盐泉。经由放射性碳十四及氚定年,温泉年代大
- 冬季运动冬季运动是指在雪上或冰上进行的运动。大多数的运动是滑雪、滑冰和滑雪橇的变化。原本只流行于冬季寒冷的地区,不过有人造雪后,在许多不下雪的地方也流行了。常见的个人运动包
- 城市约三分之二的希腊人口居住在市区内。希腊最大及最重要的都会区域位于雅典和塞萨洛尼基,居住人口分别达4百万人及1百万人。上标的解释: 1 雅典市的郊区 2 塞萨洛尼基的郊区 3
- 克劳德·香农克劳德·艾尔伍德·香农(英语:Claude Elwood Shannon,1916年4月30日-2001年2月26日),美国数学家、电子工程师和密码学家,被誉为信息论的创始人。香农是密歇根大学学士,麻省理工学院
- 钳钳是手工具,多数用来稳固地拿着物件,或者切断和弯曲坚韧材料,例如电线。通常,钳子包括一个对金属杠杆组装在钳的其中一边末端,钳的钳头位一般位于距离杠杆较短的一边,手柄则位于距
- 钻头大小钻头是一般钻子或钻挖机器所采用的切割工具,以切割出圆形的孔洞。钻头基本原理为使钻头切边旋转,切削工件,再由钻槽进行排除钻屑。它包含了机械、木工、采矿业、混凝土 水泥等
- 二巯基丁二酸2,3-二巯基丁二酸(Dimercaptosuccinic acid、英文缩写为:DMSA),别名2,3-二巯基琥珀酸,一般简称二巯基丁二酸,是一种有机硫化合物,常温下为白色结晶状粉末。因分子内含有两个巯基,所
- 阿罗哈航空243号班机事故阿罗哈航空243号班机是一班来往夏威夷的希洛和檀香山定期航班,使用波音737-200型客机飞行。1988年4月28日,飞机在飞行途中发生爆裂性失压(英语:explosive decompression)事故,约头
- 亨利·庞加莱英国皇家天文学会金质奖章(1900年) 西尔维斯特奖章 (1901) 马泰乌奇奖章 (1905) 博尧伊奖(英语:Bolyai Prize) (1905)朱尔·亨利·庞加莱(法语:Jules Henri Poincaré,法语发音宽式
