
|
INFO - FAQ - CC2-Forum - CCPro-Forum |
|
||
|
Hallo Olaf, danke für die Antwort - letztlich aber das Gleiche. Um die Verschachtelung (Funktionen werden m.E. wie Unterprogramme behandelt, d.h. die Rücksprungadresse wird im gleichen Adressraum wie bei den GOSUB's abgelegt und der Adressraum ist endlich...) fehlerfrei auf die von Dietmar festgelegte Größe zu begrenzen muß man das fertige Programm nochmal sauber "zu Fuss" analysieren und dies ist halt lästig... Beste Grüße, GeKü ************ > Hallo GeKü > > so war das bei mir am Anfang auch... > > > bei umfangreichen Programmen kann es (zumindest bei mir....) leicht zur unsauberen Programmierung der erlaubten GOSUB-Verschachtelungstiefe kommen. Das Auffinden solcher Fehler ist dann ziemlich lästig/zeitaufwendig. > > .. irgendwann hatte ich alles so verschaltelt das eine Fehlersuche so ziemlich unmöglich wurde!! ;-) > > Um den ganzen Durcheinander abzuhelfen nutze ich eigentlich fast gar keine GOSUB's oder GOTO's mehr! > Das ganze geht einfacher (jedenfalls für mich ), wenn man FUNKTIONEN benutzt (habe ich von der SPS-Programmierung übernommen), also quasi kleine Unterprogramme die je nach Bedarf aufgerufen werden! Wird auch übersichtlicher und Du kannst die einmal geschriebenen Unterprogramme einfach für andere Programme nutzen! > > Hier mal ein Beispiel: > > DEFINE a,b,c BYTE > > a=10 > b=1 > > #hauptprogramm > > print a > > if a>0 then > FC_a_plus_b(22) > end if > > print a > .... > > goto hauptprogramm > > 'Funktion a+b und Vergleich mit c (=Übergabewert) > FUNCTION FC_a_plus_b (c) > a=a+b > if a>=c then > a=0 > end if > > RETURN > END FUNCTION > > > So habe ich jetzt mehrere Funktionen mit oder ohne Übergabe geschrieben z.B.: > Daten speichern, Printfunktionen, Berechnungen, Daten mit Zeigern bearbeiten usw. ! > > So läst sich auch der "Fehlerteufel" besser beseitigen! > > > Ich hoffe ich konnte Dir eine kleine Hilfe geben?? > > Viele Grüsse > Olaf |
| Antwort schreiben |