愛笑的眼睛
級別: 實習(xí)會員
精華主題: 0
發(fā)帖數(shù)量: 3 個
工控威望: 46 點
下載積分: 673 分
在線時間: 6(小時)
注冊時間: 2018-07-05
最后登錄: 2020-10-20
查看愛笑的眼睛的 主題 / 回貼
樓主  發(fā)表于: 2019-04-21 10:14
圖片:


FOR #a[1] :=1  TO 4 DO
        #a[5] := #a[1] + #a[1];
        #c := 1 + #c;

        #a[2] := 1+ #a[2];
        #a[4] := 4;

        IF #start_1 = 1 THEN
            
            ;
        END_IF;
        #a[5] := 5;
      
        ;
    END_FOR;

在編寫的一個for循環(huán)中,用數(shù)組a{2}定義了一個int整數(shù)進行自加1(其初始值為0),即:a{2}:=1+a{2};當for循環(huán)第一次,執(zhí)行到自加語句的時候,其a{2}的結(jié)果應(yīng)當是1啊,怎么這么多啊,就跟梯形圖里的add指令一樣,一接通使能,每個掃描周期加一次。而java語言里,for循環(huán)執(zhí)行一次就加一次。求教如何使for循環(huán),每循環(huán)一次,自加的時候,語句只加一次呢
cvlsam
富士低壓,POD(觸摸屏),PLC專賣
級別: VIP會員

精華主題: 3 篇
發(fā)帖數(shù)量: 6777 個
工控威望: 38380 點
下載積分: 4203 分
在線時間: 9537(小時)
注冊時間: 2006-09-13
最后登錄: 2024-12-22
查看cvlsam的 主題 / 回貼
1樓  發(fā)表于: 2019-04-21 15:46
因為start=1,那么每個掃描周期都在執(zhí)行for循環(huán)………………

這不是SCL的坑,是程序員自己挖的坑啊,你這個程序,在JAVA中也是這個狀態(tài),你這個程序,在JAVA中不就是

while(start){
    for(int a[1]=1;a[1]<5;a[1]++){};
}

當start=1的時候………………

Good Luck~