User manual
95 C-Control Pro Mega Series
© 2008 Conrad Electronic
Fließkommazahlen (Datentyp float) dürfen ein Dezimalpunkt und einen Exponenten beinhalten:
float x,y;
x=5.70;
y=2.3e+2;
x=-5.33e-1;
sizeof Operator
Mit dem Operator sizeof() kann die Anzahl der Bytes bestimmt werden, die eine Variable im
Speicher belegt.
Beispiel:
int s;
float f:
s=sizeof(f); // der Wert von s ist 4
Bei Arrays wird auch nur die Bytelänge des Grunddatentyps zurückgegeben. Man muß den
Wert mit der Anzahl der Elemente multiplizieren, um den Speicherverbrauch des Arrays zu
berechnen.
Array Variablen
Wenn man hinter den Namen, bei der Variablendefinition in eckigen Klammern, einen Zahlenwert
schreibt, so hat man ein Array definiert. Ein Array legt den Platz für die definierte Variable mehrfach
im Speicher an. Bei der Beispieldefinition:
int x[10];
Wird für die Variable x der 10-fache Speicherplatz angelegt. Den ersten Speicherplatz kann man mit
X[0] ansprechen, den zweiten mit x[1], den dritten mit x[2], ... bis x[9]. Man darf bei der
Definition natürlich auch andere Indexgrößen wählen. Die Limitierung ist nur der RAM Speicherplatz
des C-Control Pro.
Man kann auch mehrdimensionale Arrays deklarieren, in dem weitere eckige Klammern bei der
Variablendefinition angefügt werden:
int x[3][4]; // Array mit 3*4 Einträgen
int y[2][2][2]; // Array mit 2*2*2 Einträgen
Arrays dürfen in CompactC bis zu 16 Indizes (Dimensionen) haben. Der Maximalwert für einen
Index ist 65535. Die Indizes der Arrays sind immer nullbasiert, d.h., jeder Index beginnt mit 0.
Es findet während des Programmlaufs keine Überprüfung statt, ob die definierte Indexgrenze
eines Arrays überschritten wurde. Wird der Index während der Programmabarbeitung zu groß, wird
auf fremde Variablen zugegriffen, und die Chance ist groß, daß das Programm "abstürzt".