Üst sınırın sabit bir değerle tanımlanmadığı FOR ifadelerini tespit eder
Gerekçe: Bir döngünün üst sınırı değişken bir değer ise, artık bir döngünün ne sıklıkta yürütüldüğünü görmek mümkün değildir. Bu, çalışma zamanında ciddi sorunlara yol açabilir. En kötü durum sonsuz bir döngüdür.
Önemliymiş: Yüksek
Örnek
PROGRAM PLC_PRG VAR i:INT; iBorder1: INT := 10; iBorder2: INT := 10; iCounter: INT; END_VAR VAR CONSTANT ciBorder:INT := 10; END_VAR FOR i:=0 TO 10 DO //OK iCounter := i; END_FOR FOR i:=0 TO ciBorder DO // OK iCounter := i; END_FOR FOR i:=0 TO iBorder1 DO // SA0081 iCounter := i; END_FOR FOR i:=0 TO iBorder2 DO // SA0081 iCounter := i; IF iCounter = 10 THEN iBorder2 := 50; END_IF END_FOR --> SA0081: Upper border of a for loop must be a constant value
Ayrıca bakınız