西门子PLC 7288 SMART 200 系列大量现货 13922952859
siemens西门子PLC专注西门子PLC 7288系列 SMART 200系列现货销售
全国咨询热线:13922952859

为什么在激活的块注释中无法识别注释的结束?

时间:2022-09-02 11:26:55 作者:admin 点击:

描述:
在块注释的情况下,S7-SCL中如果一行中有行注释“//”,且注释中输入了“(*”和“*)”,则无法识别注释的起始和结束。图 01 显示了在最后一行包含行注释(//…//)的块注释样例。而且,最后一行中的块注释以“*)”结束。下一个IF语句则无法被识别(没有标记成蓝色),并只被编译器编译为注释。在某些情况下信息“Source end reached before block end”在编译过程中显示。

为什么在激活的块注释中无法识别注释的结束?
图 01

在S7-SCL V5.3及更高版本中不再允许这种注释输入方法,因为在先前的S7-SCL版本中,该方法曾导致程序崩溃。块注释的结尾不能直接位于行注释之后。

补救措施:
将块注释的结尾挪到下一行中(如图 02 所示)。

为什么在激活的块注释中无法识别注释的结束?
图 02

在S7-SCL源中不仅要检查起始块注释字符“(*”和结束块注释字符“*)”的数量,还要检查以逻辑限制开始和结束的注释。跨块的注释不能在一个块中开始然后跨越块限制被创建。


标签: