Für dieses Forum muß Javascript im Browser aktiviert werden!
Kommentar: Einfügen von HTML im Kommentar: Link einfügen: <a href="LINKURL" target="_blank">LINKTITEL</a> Bild einfügen: <img src="BILDURL"> Text formatieren: <b>fetter Text</b> <i>kursiver Text</i> <u>unterstrichener Text</u> Kombinationen sind auch möglich z.B.: <b><i>fetter & kursiver Text</i></b> C2 Quellcode formatieren: <code>Quellcode</code> ASM Quellcode formatieren: <asm>Quellcode</asm> (Innerhalb eines Quellcodeabschnitts ist kein html möglich.) Wichtig: Bitte mache Zeilenumbrüche, bevor Du am rechten Rand des Eingabefeldes ankommst ! > Hallo ACU, > > > > > Der Standardbefehl: > > > > start://für die Marke > > > > goto start;//zum anspringen > > > > > > > > wird vom Compiler als Fehler angezeigt. > > Das ist klar. > > C2 ist eine C-Programmiersprache. > In C gibt es im allgemeinen keinerlei Sprungbefehle. > Dafür gibt es z.B. Funktionen und Schleifen. > > Es ist zwar VM-technisch möglich, zu speziellen stellen zu springen, > jedoch benötigt man hierfür genauere Kenntnisse der VM bzw. sollte sich damit > stärker beschäftigen. > mit VM_BRANCH kann man gezielt eine Anzahl an Words vor oder zurückspringen. > <code> > ... > inline vmcodes.VM_BRANCH; > inline 6; > y=x+2; // 4 VM-Codes, 6 Words > ... > </code> > Hier wird die Zeile y=x+2 "übersprungen". > > Aber, wie gesagt, kommt man i.d.R. ohne explizite Sprungbefehle > in C-Programmiersprachen aus. > > > Ich möchte, dass mein Roboter bevor er losfährt kontrolliert, ob genug Platz vor ihm ist. > > Wenn nicht, soll er auf dem Display ausgeben " Bitte an eine andere Stelle setzen". > > Das muß man mit einer Taste bestätigen. Anschließend soll der Roboter wieder > > (und das ist das Problem) abfragen, ob der Weg frei ist, denn es könnte sein, dass der > > Anwender einfach nur den Knopf gedrückt hat, oder trotz verücken nicht genug Platz ist. > > > > Die Abfragen und Ausgaben sind alle kein Problem (habe ich alles fertig). > > Ich möchte aber nicht zig Mal die selbe schleife hintereinander machen, da dass > > alles andere als sauber Programmiert wäre. > > Ich sehe hier keinerlei grund für ein Springen. > Du brauchst eigentlich nur folgendes Konstrukt: > <code> > while <kein_Platz> > { > lcdext.print(<Text_kein_Platz>); > wait <Taste_gedrückt>; > //wait not <Taste_gedrückt>; //evtl. warten bis Taste wieder losgelassen wurde ... > lcdext.clear(); > } > </code> > > MfG André H.