Buchempfehlung
Windows System Programming
Windows System Programming
Das Kompendium liefert viele interessante Informationen zur Windows-Programmierung auf Englisch. [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: Deklaration

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 wird.

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 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, Variablen zu verwenden, die ein Suffix besitzen, 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 ist die Verwendung von VAR nicht möglich.

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


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