问题详情

程序可以找出C语言源程序中的语法错误。为某个应用而用不同高级语言编写的程序模块经分别编译产生(42),再经过(43)处理后形成可执行程序。


A、汇编

B、预处

C、编辑

D、C语言编译

时间:2021-12-31 23:21 关键词:

答案解析

D
解析:由汇编语言和各种高级语言编写的程序称为源程序,源程序必须翻译成机器语言程序后才能在机器上运行,因此就出现了语言处理程序。实现高级语言到机器语言(或汇编语言)翻译的基本模式有两种:编译方式和解释方式,所实现的语言处理程序就相应地被称为编译程序和解释程序。编译程序将用高级语言编写的程序翻译成目标程序后保存在另一个文件中,该目标程序经连接处理后可脱离源程序和编译程序而直接在机器上反复多次运行。解释程序是将翻译和运行结合在一起进行,翻译一段源程序后,紧接着就执行它,不保存翻译的结果。程序语言不同,为其实现的编译程序或解释程序都不同,C语言是一种通用的高级程序设计语言,需要用针对C语言的编译程序对其进行翻译。程序员编写的源程序中往往会有一些错误,这些错误大致被分为静态错误和动态错误两类。静态错误又可以分为语法错误和静态语义错误。词法和语法错误是指有关语言结构上的错误,如单词拼写错误就是一种词法错误,表达式中缺少操作数、括号不匹配是不符合语法规则要求的语法错误等。静态的语义错误是指分析源程序时可以发现的语言意义上的错误,如整除取余的两个操作数中一个是整型数据,而另一个是实型数据。静态错误应该在编译的不同阶段被检查出来。所谓动态错误,是指源程序中的逻辑错误,它们发生在程序运行的时候,比如算法逻辑上的错误。动态错误也被称为动态语义错误,如变量取值为0是被用作除数,引用数组元素时下标出界等。对于程序语言,编辑程序的主要任务是用于源程序的输入和修改,而C语言的预处理程序主要进行源程序中字符串的替换过程,它们都不涉及程序中的错误处理。