C Control Pro application board Mega 128 198258 Benutzerhandbuch

Produktcode
198258
Seite von 200
77
Compiler
© 2005 Conrad Electronic
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".
Strings
Es existiert kein expliziter "String" Datentyp. Ein String basiert auf einem Array vom Datentyp char.
Man muß die Größe des Arrays so wählen, daß alle Zeichen des Strings in das character Array
passen. Zusätzlich wird Platz für ein Terminierungszeichen (dezimal Null) benötigt, um das Ende
der Zeichenkette anzuzeigen.
Beispiel für eine Zeichenkette mit maximal 20 Zeichen:
char str1[
21
];
Als Ausnahme darf man char Arrays Zeichenketten zuweisen. Dabei wird die Zeichenkette
zwischen Anführungszeichen gesetzt.
str1=
"Hallo Welt!"
;
 Man kann keinen String einem mehrdimensionalen Char Array zuweisen. Es gibt aber Tricks
für Fortgeschrittene:
char str_array[
3
][
40
];
char single_str[
40
];
single_str=
"A String"
;
Str_StrCopy(str_array,single_str,
40
);  
// kopiert single_str in den zweiten String von str_array
Dies funktioniert, da mit einem Abstand von 40 Zeichen hinter dem ersten String, in str_array der
Platz für den zweiten String liegt.
Sichtbarkeit von Variablen
Werden Variablen außerhalb von Funktionen deklariert, so haben sie eine globale Sichtbarkeit.
Das heißt, man kann sie aus jeder Funktion ansprechen. Variablendeklarationen innerhalb von