1.问题描述:

在编译vehicle增加上下电任务时候,总是执行解析上下电msg错误,当时认为是不是字段写的有错误,当时检查好几遍,发现字段没有问题,那么为什么会执行解析错误后的代码呢,当时好郁闷,又重新检查错误,发现在

在if()后面加;导致程序检查不出错误

在if()后面有个“;”,当时就发现肯定是这个的问题,后来在if()后面加else()就能检查加“;”的错误,如果不加else{}分号还在if();编译器就不会报错,但是加上else{}后 编译器就会报错,后来搞清楚,“;”就是一个空语句,不管if()里面是真是假后面的大括号{}都会执行,所以导致立刻返回-1,程序解析错误。

分析:if()后加“;”,不管()里的是否为真,都会执行后面{}里的内容太,并且在没有后续else{}编译器不会报错。

相关文章:

  • 2021-12-06
  • 2022-12-23
  • 2022-12-23
  • 2022-01-15
  • 2021-04-28
  • 2022-12-23
  • 2021-08-17
  • 2021-07-18
猜你喜欢
  • 2022-01-22
  • 2022-12-23
  • 2021-09-09
  • 2022-12-23
  • 2021-12-24
  • 2022-12-23
  • 2021-09-06
相关资源
相似解决方案