Forum

Einloggen | Registrieren | RSS  

Hartwig(R)

12.04.2021,
08:03

@ schaerer

CCBASIC for...next ?

Hallo Thomas,
Hier ist das beschrieben:
https://de.m.wikipedia.org/wiki/C-Control
Zum ccbasic findest Du Infos unter “Programmierung“.
Grüße
Hartwig

schaerer(R)

Homepage E-Mail

Kanton Zürich (Schweiz),
11.04.2021,
21:05

@ olit

CCBASIC for...next ?

Hallo Olit,

Freut mich, von Dir zu lesen. :-D

Helfen kann ich Dir da zwar nicht. Aber was anderes. Was ist CC-Basic? Ist das spziell für Windows konzipiert? Von früher kenne ich noch das Power-Basic. Aber das war noch in der Vor-Windows-Ära... :lookaround:

Mit Basic, genauer GFA-Basic 3.0, programmierte ich noch auf dem ATARI-ST-Mega4. Meine Güte waren das noch Zeiten... :-D

TURBO-C benutzte ich manchmal auch, war aber nie so richtig Fan davon. :-|

--
Gruss
Thomas

Buch von Patrick Schnabel und mir zum Timer-IC NE555 und LMC555:
https://tinyurl.com/zjshz4h9
Mein Buch zum Operations- u. Instrumentationsverstärker:
https://tinyurl.com/fumtu5z9

olit(R)

E-Mail

Berlin,
11.04.2021,
14:40

@ Itzlbritzl

CCBASIC for...next ?

»
» Drum Rum kommst du mit einem
»
» Do
» ....
» For z=0 to 255
» If port off then exit for
» Next
»
» Loop while port off
»
» Wobei ich den CCBASIC Dialekt nicht im Detail kenne, die Schlüsselwörter
» sollts aber geben.

exit for
Diesen raffinirten Befehl Wili der Compiler nicht .
Ist auch im Handbuch von dem kleinen µC nicht erwahnt.
Dass es diesen Befehl gibt, hatte ich im Internet schon recherschiert.

Itzlbritzl(R)

11.04.2021,
14:25
(editiert von Itzlbritzl
am 11.04.2021 um 14:26)


@ olit

CCBASIC for...next ?

» » » Mein Sohn meckert mit mir rum, Weil ich den Befehl so verwendet habe.
» » »
» » »
» » » Warten ist eine Sprungmarke
» » » #warten
» » » ...
» » » ...
» » »
» » » for z=o to 255
» » » if port off then warten
» » » next
» » »
»
» » Es ist kein schöner Stil, weil eine Schleife kein sauberes Ende hat. Bei
» » komplexeren Code kann das zu seltsamen verhalten führen, das schwer zu
» » analysieren ist.
» »
» » Aber wenn's geht und dem persönlichen Geschmack entspricht und nicht
» » unbedingt in kritischer Infrastruktur verwendet wird...
» »
» » Nachtrag: wenn der Compiler nicht gut ist, kann es dir auch passieren,
» dass
» » Register nicht den Wert haben an der Sprungmarke, die man erwartet.
» Siehe
» » seltsames Verhalten.
»
» Danke für deine Erklärung. :-)
» Weil es ja in meinen Programmen funktioniert, blieb meinem Sohn auch nichts
» anderes übrig als zu sagen, „dass das nicht korrekt ist“.

Drum Rum kommst du mit einem

Do
....
For z=0 to 255
If port off then exit for
Next

Loop while port off

Wobei ich den CCBASIC Dialekt nicht im Detail kenne, die Schlüsselwörter sollts aber geben.

olit(R)

E-Mail

Berlin,
11.04.2021,
13:58

@ Itzlbritzl

CCBASIC for...next ?

» » Mein Sohn meckert mit mir rum, Weil ich den Befehl so verwendet habe.
» »
» »
» » Warten ist eine Sprungmarke
» » #warten
» » ...
» » ...
» »
» » for z=o to 255
» » if port off then warten
» » next
» »

» Es ist kein schöner Stil, weil eine Schleife kein sauberes Ende hat. Bei
» komplexeren Code kann das zu seltsamen verhalten führen, das schwer zu
» analysieren ist.
»
» Aber wenn's geht und dem persönlichen Geschmack entspricht und nicht
» unbedingt in kritischer Infrastruktur verwendet wird...
»
» Nachtrag: wenn der Compiler nicht gut ist, kann es dir auch passieren, dass
» Register nicht den Wert haben an der Sprungmarke, die man erwartet. Siehe
» seltsames Verhalten.

Danke für deine Erklärung. :-)
Weil es ja in meinen Programmen funktioniert, blieb meinem Sohn auch nichts anderes übrig als zu sagen, „dass das nicht korrekt ist“.

Itzlbritzl(R)

11.04.2021,
13:41
(editiert von Itzlbritzl
am 11.04.2021 um 13:43)


@ olit

CCBASIC for...next ?

» Mein Sohn meckert mit mir rum, Weil ich den Befehl so verwendet habe.
»
»
» Warten ist eine Sprungmarke
» #warten
» ...
» ...
»
» for z=o to 255
» if port off then warten
» next
»
»
» Nun wird gesagt,
» "Jede FOR-Schleife darf im Verlauf des Programms nur über ihre eigene
» NEXT-Anweisung laufen.
» Die schleife wird in dem Fall zwar nicht über next beendet weil ich ja bei
» erfüllung der Bedingung raus springe.
» Aber sie wied ja nicht über ein NEXT einer anderen schleife beendet.
» Außerdem verwende ich den Befehl so, in zwei Programmen problemlos.
»
» Auch sowas sollte funktionieren.
» For z1=0 to 255
» For z1=0 to 255
» For z1=0 to 255
» For z1=0 to 255
» For z1=0 to 255
» For z1=0 to 255
» If Strahl=off then warten
» Next
» next
» next
» next
» next
»
» Das soetwas verboten ist, ist klar
» For z1=0 to 255
» For z1=0 to 255
» For z1=0 to 255
» For z1=0 to 255
» For z1=0 to 255
» For z1=0 to 255
» If Strahl=off then blabla '
» Next
» next
» next
» next
» #Blabal
» next
» next

Es ist kein schöner Stil, weil eine Schleife kein sauberes Ende hat. Bei komplexeren Code kann das zu seltsamen verhalten führen, das schwer zu analysieren ist.

Aber wenn's geht und dem persönlichen Geschmack entspricht und nicht unbedingt in kritischer Infrastruktur verwendet wird...

Nachtrag: wenn der Compiler nicht gut ist, kann es dir auch passieren, dass Register nicht den Wert haben an der Sprungmarke, die man erwartet. Siehe seltsames Verhalten.