在语法分析阶段, 将出现此类错误。在执行程序期间发现语法错误。
一些语法错误可能是:
- 结构错误
- 缺少操作符
- 括号不平衡
当无效的计算输入计算器时, 语法错误也可能发生。这可能是由于在一个数字中输入几个小数点, 或者在不关闭括号的情况下打开了括号。
例如1:当需要“ ==”时使用“ =”。
16 if (number=200)
17 count << "number is equal to 20";
18 else
19 count << "number is not equal to 200"
许多编译器将显示以下警告消息:
语法警告:赋值运算符在程序firstprog.cpp的if表达式行16中使用
在此代码中, 如果expression使用等号实际上是一个赋值运算符, 而不是测试相等性的关系运算符。
由于赋值运算符, 数字设置为200, 并且表达式number = 200始终为true, 因为表达式的值实际上是200。在此示例中, 正确的代码为:
16 if (number==200)
示例2:缺少分号:
int a = 5 // semicolon is missing
编译器消息:
ab.java:20: ';' expected
int a = 5
示例3:表达式中的错误:
x = (3 + 5; // missing closing parenthesis ')'
y = 3 + * 5; // missing argument between '+' and '*'
评论前必须登录!
注册