
|
INFO - FAQ - CC2-Forum - CCPro-Forum |
|
Hallo miteinander, > Man schreibt aber ungern Parser, die mehr als ein Token vorausschauen müssen. das ist wohl wahr und ist in diesem Fall auch gar nicht notwendig: Beim Parsen der Zeile "sub1 : sub2 : sub3" wird der Bezeichner "sub1" als Label angesehen, da es am Zeilenanfang steht und ein ":" folgt. Beim Parsen von "a=1 : b=2 : c=3" wird "a" wegen des nachfolgenden "=" als Nicht-Label erkannt, obwohl es am Zeilenanfang steht. Besonders clever ist dieses Verfahren nicht, aber so scheint zumindest QBASIC zu arbeiten. In einigen anderen BASIC-Dialekten dürfen hinter einem Label keine weiteren Anweisungen (nur Kommentare) folgen. Unabhängig von dieser Problematik halte ich es für sinnvoll, Label durch ein Doppelkreuz ("#") vor dem Namen zu kennzeichnen. Als ich zum ersten Mal mit CCBASIC zu tun hatte, empfand ich diese Syntax als reichlich ungewöhnlich, aber so ein Doppelkreuz am Beginn einer Zeile ist immer ein "Eyecatcher" und somit der Wichtigkeit von Sprungzielen angemessen. Dietmar Meine Homepage: http://ccintern.dharlos.de |
| Antwort schreiben |