C Control Pro application board Mega 128 198258 ユーザーズマニュアル

製品コード
198258
ページ / 200
95
Compiler
© 2005 Conrad Electronic
SizeOf Operator
Mit dem Operator SizeOf() kann die Anzahl der Bytes bestimmt werden, die eine Variable im
Speicher belegt.
Beispiel:
Dim s As Integer
Dim
 f As Single
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 runden 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:
Dim x(
10
As Integer
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 Indizes, durch Komma
getrennt, bei der Variablendefinition angefügt werden:
Dim x(
3
,
4
As Integer  
' Array mit 3*4 Einträgen
Dim y(
2
,
2
,
2
As Integer 
' Array mit 2*2*2 Einträgen
 
Arrays dürfen in BASIC 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:
Dim str1(
21
As Char
Als Ausnahme darf man Char Arrays Zeichenketten zuweisen. Dabei wird die Zeichenkette
zwischen Anführungszeichen gesetzt.