Buchempfehlung
Mikrocomputertechnik mit Controllern der Atmel AVR-RISC-Familie
Mikrocomputertechnik mit Controllern der Atmel AVR-RISC-Familie
Umfassend, aber leicht verständlich führt dieses Buch in die Programmierung von ATMEL AVR Mikrocontrollern ein. [Mehr Infos...]
FreeBASIC-Chat
Es sind Benutzer im FreeBASIC-Chat online.
(Stand:  )
FreeBASIC bei Twitter
Twitter FreeBASIC-Nachrichten jetzt auch über Twitter erhalten. Follow us!


Referenz - VAR

Referenz-Navigation

 

Syntax: VAR [SHARED] SymbolName = Ausdruck[, SymbolName = Ausdruck [, ...]]
Typ: Anweisung
Kategorie: Speicherverwaltung

VAR deklariert eine Variable, deren Typ aus dem initialisierenden Ausdruck abgeleitet wird.

Bei einer Deklaration mit VAR ist es nicht erlaubt, explizit einen Variablentyp anzugeben. Stattdessen wird der Typ aus dem initialisierenden Ausdruck ermittelt. Dieser Ausdruck kann eine Konstante oder eine Variable eines beliebigen Typs sein. Einzige Ausnahme bildet der BefehlsreferenzeintragWSTRING, der von VAR nicht unterstützt wird, da es keinen WSTRING-Typ mit variabler Länge gibt. Das wird sich höchstwahrscheinlich auch nicht ändern, wegen der Komplexität, die durch die Behandlung von Unicode hervorgerufen wurde.

Da der Variablentyp daraus abgeleitet wird, was der Variablen zugewiesen wird, ist es hilfreich, zu wissen, wie die Zeichenfolgen bewertet werden. Alle Ziffernfolgen ohne Dezimal-Punkt sind standardmäßig BefehlsreferenzeintragINTEGER. Alle Ziffernfolgen mit Dezimal-Punkt sind standardmäßig BefehlsreferenzeintragDOUBLE.

Alle alphanumerischen Strings sind standardmäßig BefehlsreferenzeintragSTRING. Wird eine Variable mit WSTRING und einer Zeichenfolge initialisiert, wird sie "umgewandelt" zu einem String mit variabler Länge.

Bestimmte Suffixe können bei Variablenbezeichnern benutzt werden, um ihren Typ zu festzulegen. Siehe BefehlsreferenzeintragDatentypen zu weiteren Informationen über Suffixe, die nach einer Zeichenfolge erlaubt sind.

Beachte: Suffixe müssen hinter dem Initialisierer erscheinen, nicht hinter der Variablen. Der Versuch, VAR mit einer Variablen zu benutzen, die einen Suffix hat, ruft einen Compiler-Fehler hervor.

Beispiele:

Var a  = Cast(Byte, 0)
Var b  = Cast(Short, 0)
Var c  = Cast(Integer, 0)
Var d  = Cast(LongInt, 0)
Var d2 = 0ll  ' LONGINT, festgelegt über das Suffix
Var au = Cast(UByte, 0)
Var bu = Cast(UShort, 0)
Var cu = Cast(UInteger, 0)
Var du = Cast(ULongInt, 0)
Var e  = Cast(Single, 0.0)
Var f  = Cast(Double, 0.0)
Var g  = @c      ' Integer Pointer
Var h  = @a      ' Byte Pointer
Var s2 = "hello" ' String mit Variabler Länge

Var ii = 6728   ' impliziter Integer
Var id = 6728.0 ' impliziter Double

Print "Byte: ";len(a)
Print "Short: ";len(b)
Print "Integer: ";len(c)
Print "Longint: ";len(d)
Print "noch ein Longint: ";len(d2)
Print "UByte: ";len(au)
Print "UShort: ";len(bu)
Print "UInteger: ";len(cu)
Print "ULongint: ";len(du)
Print "Single: ";len(e)
Print "Double: ";len(f)
Print "Integer Pointer: ";len(g)
Print "Byte Pointer: ";len(h)
Print "Variabler String: ";len(s2)
Print
Print "Integer: ";len(ii)
Print "Double: ";len(id)

Sleep

Unterschiede zu QB: neu in FreeBASIC

Unterschiede zu früheren Versionen von FreeBASIC: existiert seit FreeBASIC v0.17

Unterschiede unter den FB-Dialektformen:
In der Dialektform Befehlsreferenzeintrag-lang qb steht VAR nicht zur Verfügung und kann nur über __VAR aufgerufen werden.

Siehe auch:
BefehlsreferenzeintragDIM, BefehlsreferenzeintragREDIM, BefehlsreferenzeintragCOMMON, BefehlsreferenzeintragSTATIC (Anweisung), BefehlsreferenzeintragSHARED, BefehlsreferenzeintragCONST


Zusätzliche Informationen und Funktionen
  • Der Referenzeintrag wurde am 09.10.2007 von Redakteurnemored angelegt.
  • Die aktuellste Version wurde am 16.01.2012 von Redakteurnemored gespeichert.
  Versionen Versionen