NXC: Unterschiede zu C
andere Hauptfunktion
BearbeitenDie Hauptfunktion ist in NXC ein Task, der durch
task main()
parameterlos eingeleitet wird. Man kann keine Argumente an NXC-Programme übergeben.
keine Fließkommazahlen
BearbeitenEs existieren keine Fließkommazahlen und d.h. auch die Typen float und double nicht. Sebi: Mit FW 1.26 aufwärts schon!
zusätzlicher Datentyp für Zeichenketten
BearbeitenDer Typ string (vergleichbar mit string aus C++) existiert; in ihm lassen sich Zeichenketten speichern.
zusätzliche Schleifen
BearbeitenIn NXC gibt es zwei zusätzliche Schleifen: until und repeat. Until ist das Gegenteil von while, wird also beendet, wenn der übergebene Wert ungleich 0 ist.
In C würde das so aussehen:
while(!Boolescher_Wert)
Repeat: Der übergebene Wert ist die Anzahl der Wiederholungen der Schleife (Zählt eigentlich nicht mehr zu den "klassischen" Kontrollstrukturen und könnte man auch als Funktion abstempeln).
NXC-Syntax:
repeat(Wiederholungen)
In C würde das so aussehen:
for(int i=Wiederholungen; i>0; i--)
oder so:
for(int i=0; i<Wiederholungen; i++)
zusätzliche Unterprogramme
BearbeitenEs gibt noch zwei weitere funktionsähnliche Unterprogrammtypen: sub und task (auch main ist ein task).
NBC als Assembler
BearbeitenAls Inline-"Assembler" wird NBC benutzt.
keine Adressen
BearbeitenEs gibt keinen Adressoperator, keine Referenzen und keine Zeiger.