
|
INFO - FAQ - CC2-Forum - CCPro-Forum |
|
Hi, > in meinem programm sind 3 gosubs enthalten, soweit so gut. > nach einer fehlerabfrage wird abgebrochen und ans programmanfang gesprungen. > jetzt kommt es so glaube ich an einen überlauf der gosubs. Das kann passieren, wenn Du innerhalb der Unterroutine mit goto an den Programmanfang springst, also bevor das "return" erreicht wird. Etwa so: #start ... gosub sub1 ... end #sub1 ... if Fehler_Bedingung then goto start ... return Ist das bei Dir so? > ich hoffe das war verständlich. > kann man am programmanfang irgendwie die gosubs resetten? Nein. Du darfst es so einfach nicht machen. Du könntest Dir in der Unterroutine ein Bit-Flag setzen, was Du nach dem Rücksprung mit return im Hauptprogramm abfragst, oder Du könntest die Unterroutine einen booleschen Wert zurückgeben lassen, etwa ON im Erfolgsfall und OFF im Fehlerfall: #start ... if not sub1 goto start ... end #sub1 ... if Fehler_Bedingung then return OFF ... return ON Bye Achim |
| Antwort schreiben |