编写解释时的句法或词汇错误

Syntactic or Lexical Error in writing an interpret

提问人:Marcinnn123 提问时间:10/4/2023 最后编辑:BergiMarcinnn123 更新时间:10/4/2023 访问量:30

问:

对于一个学校项目,我必须用 C 语言编写一个解释,用于类似于 Swift 的编程语言。我在代码中遇到了一个问题,我不确定这是语法错误还是词法错误。在下面的代码行中: 我应该如何识别什么是词法和语法错误。因为我不知道 -/ 是否是无效的标记,它是词法错误,或者减号之后应该有除法,所以它是语法错误。result = a -/ b

例如在代码中也是如此:if (result ==> ) 这是一个语法错误,因为在 == 之后不应该有符号>或者它是词法,因为 ==> 不是有效的标记

语法 词法分析 解析错误

评论

0赞 Bergi 10/4/2023
我们无法判断,这取决于您正在实现的语言。你有正式的语法吗?
0赞 Marcinnn123 10/4/2023
@Bergi它是 Swift 的子集
0赞 Bergi 10/4/2023
那么哪个子集?你是否必须解析整个 Swift 语言,但不能解释所有语言?
0赞 Bergi 10/4/2023
你看过 docs.swift.org/swift-book/documentation/ 吗?
1赞 500 - Internal Server Error 10/4/2023
我对 Swift 不是很熟悉,但一般来说,如果语言定义了一个标记,那么词法分析器会破坏你输入到标记中。如果没有,那么分手将是 ,所以无论哪种情况都不应该有词法错误。除非运算符由语言定义,否则这确实会在编译过程的后期触发语法错误。-/result=a-/bresult=a-/b-/

答: 暂无答案