FreeBasic: VAL() und STR()

Aus Wikibooks

Wenn man eine Zahl in einer String-Variable (bzw. einen Text, Zeichenkette) hat, und daraus wieder eine Zahlenvariable machen will, braucht man den Val-Befehl.

Beispiel: Man hat die Variable 'Text'. In der Variable steht "123.456". Aus der Variable macht man so eine gültige Zahlenvariable:

dim text as string, zahl as double
text = "123.456"
zahl = val(text)
print zahl
sleep


Natürlich geht das auch umgekehrt. Dann braucht man den Str-Befehl:

dim text AS string, zahl as integer
zahl = 123
text = str(zahl)
print Text
sleep


Man kann eine Zahl auch anders in Text umwandeln. Die folgende Methode ist vor allem bei der Ausgabe von Text und Zahlen sehr gut geeignet:

dim text as string, zahl as integer
zahl = 123
text = "Die Variable 'zahl' hat den Wert " & zahl
print Text
sleep


Den Operator "&" kennen wir bereits von der Verkettung von Strings, man kann damit auch Strings und Zahlen zusammenfügen, die Zahlen werden automatisch in Strings umgewandelt; sonst müsste man immer Str() schreiben.

Weitere Formen von Val()[Bearbeiten]

Es kann vorkommen, dass man die Zahl in einem String zum Beispiel in einer Long Variablen braucht, da die Variable später über den Wertebereich eines Integer hinaus geht, oder man möchte lieber einen vorzeichenlosen Integer, da Werte unter 0 sinnlos wären. Dafür gibt es noch 4 andere Funktionen:

Name Beschreibung
VALINT Wandelt einen String in einen Integer.
VALUINT Wandelt einen String in einen UInteger.
VALLNG Wandelt einen String in einen Longint.
VALULNG Wandelt einen String in einen ULongint.


Ein Beispiel für die 64-Bit Variante:

dim zahl as longint, text as string
text = "-61524413"
zahl = vallng(text)
print zahl
sleep