什么是语法错误

作者:  更新 :2023-02-20

最佳答案

在计算机科学中,语法错误是指程序的词法有误,编译器或解译器在词法分析时没法把它转换成适度的编程语言。

什么是语法错误

介绍

在编译语言中,语法错误一定只在编译期时发生,编译器要每一个词法都恰当,才能恰当编译。但是解释型语言里的语法错误可能需到运行期才会出现,并且不一定容易区别语法错误及词义错误。

初期 8 位家用电脑的操作界面是 BASIC 编译器,SYNTAX ERROR 错误信息常导致客户的困扰,只需编译器无法识别客户的键入,就会出现此一信息。

若计算器中导出不恰当算式,会出现语法错误,比如算式含有左括号但没有右括号、或者一个数字含有多个小数位等。

在 Java 语言中,以内的程序是正确的:

以内的程序有误:

第二个程序本质上要显示的是称为 Hello World 的变量,而非 Hello World 这个字,且 Java 语言的变量名称中不可有空缺,因而会有语法错误。

编译器会标识程序含有语法错误的行,可能也会有简单表明。

词义错误

在计算机程序设计里,词义错误(Logic error)(也叫逻辑错误)是程序错误的一种,这类错误会导致程序运作出错,但还不至于奔溃。逻辑错误会产生意外的导出或结论,但并不一定会立刻被发现。

逻辑错误在编译语言和解释语言里都可能出现。与语法错误的程序不同的是,逻辑错误的程序从词法上来讲是正确的一段程序,但其运作结果却与预期不符。逻辑错误的唯一表现就是错误的运转结论。

在 C 语言中,逻辑错误是一种特殊的异常。

逻辑错误的原因可能是句子中出现了错漏(例如公式填错)、算法里的错误,甚至选了错误的算法。此外还有一些其他缘故,如类型转换错误、变量作用域错误、忽略的代码段、对问题或需求的了解有误这些。

解释型语言

解释型语言(英文:Interpreted language),是一种编程语言。这一类型的编程语言,会把编码一句一句立即运作,不用像编译语言(Compiled language)一样,通过编译器优先编译为机器码,以后再运行。这类编程语言必须运用编译器,在运行期,动态将编码逐句表述(interpret)为机器码,或者早已事先编译为机器码的子程序,以后再运行。

本质上,一切编程语言都能够是编译式,或解释型的。他们之间的差别,仅与程序的应用相关。很多编程语言同时采用编译器与编译器来达到,主要包括 Lisp,Pascal,C,BASIC 与 python。JAVA 及 C#选用混和方法,先把代码编译为 bytecode,在运行中再进行解释。

- END -

查看更多知识百科