Seite 1 von 1
.ToFloat() -> Bug oder Feature?
Verfasst: 04.03.2020, 07:27
von dtp
Hallo,
folgendes Skript liefert den korrekten Output "9":
Code: Alles auswählen
integer test = 9.4;
test = test.ToInteger();
WriteLine(test);
Aber mit ".ToFloat()" bricht das Skript ab.
Code: Alles auswählen
real test = 9.4;
test = test.ToFloat();
WriteLine(test);
Bug oder Feature?
Re: .ToFloat() -> Bug oder Feature?
Verfasst: 04.03.2020, 08:11
von Black
ein real hat keine methode .ToFloat ().
In diesem Fall sitzt der fehler vor dem Monitor ^^
Black
Re: .ToFloat() -> Bug oder Feature?
Verfasst: 04.03.2020, 08:12
von jp112sdl
Und laut
Doku, Seite 19:
ToFloat: Wandelt eine Zeichenkette in eine Gleitkommazahl um.
Also alles ok.
Re: .ToFloat() -> Bug oder Feature?
Verfasst: 04.03.2020, 09:50
von dtp
Ah, okay. Da habe ich wohl etwas zu naiv gedacht, dass das Ursprungsformat keine Rolle spielt. Danke.
Re: .ToFloat() -> Bug oder Feature?
Verfasst: 04.03.2020, 18:10
von alchy
Wobei schon die erste Zeile falsch ist.
da die automatische Typumwandlung da schon ein real draus macht, egal ob du das als integer deklarierst.
Dann wandelst du es zu integer....
.ToFloat() funktioniert aber wirklich weder bei integer ( das halte ich zumindest für fragwürding)
noch bei real (macht keinen Sinn, also halte ich es für richtig - nur warum wird abgebrochen also schlussendlich auch fragwürdig?
Aber das ist zumindest konsequent.
Und da es so konsequent umgesetzt ist, wird mittels .ToFloat() aus ein
string test = "9,4"; ! wird zu 9.000000
string test = "9.4"; ! wird zu 9.400000
string test = "string" ! wird zu 0.000000
kann man köstlich drüber diskutieren. Muss man aber nicht.
Alchy
Re: .ToFloat() -> Bug oder Feature?
Verfasst: 05.03.2020, 08:09
von dtp
alchy hat geschrieben: ↑04.03.2020, 18:10
Wobei schon die erste Zeile falsch ist.
Nun ja, das war schon Absicht so.
Aber danke für deine weiteren Ausführungen. Die bestätigen mich zumindest, dass ich nicht total daneben lag.
Re: .ToFloat() -> Bug oder Feature?
Verfasst: 05.03.2020, 21:08
von alchy
dtp hat geschrieben: ↑05.03.2020, 08:09
Nun ja, das war schon Absicht so.
Absicht, achso, na dann habe ich nix gesagt.
Alchy
Re: .ToFloat() -> Bug oder Feature?
Verfasst: 08.06.2020, 18:53
von dtp
Übrigens, sehr angenehm finde ich folgende Eigenschaft:
- 2020-06-08 18-50-59.png (6.59 KiB) 3159 mal betrachtet
Sprich, wenn in einem String Zeichen nach einem Zahlenwert folgen, die keine Ziffern sind, werden sie automatisch bei .ToInteger() und .ToFloat() ignoriert.
Re: .ToFloat() -> Bug oder Feature?
Verfasst: 08.06.2020, 19:30
von MichaelN
Ja, so könnte man beim XML parsen schön Quick and dirty programmieren. Ich habe es trotzdem ordentlich gemacht, wer weiß was das nächste oder übernächste Release aus diesem Feature macht.