"return" gibt Wert nicht korrekt zurück ..

  • VB.NET
  • .NET (FX) 1.0–2.0

Es gibt 3 Antworten in diesem Thema. Der letzte Beitrag () ist von Vultrax.

    "return" gibt Wert nicht korrekt zurück ..

    Hallo

    Ich konvertiere einen Int32 in Single, was auch alles wunderbar funktioniert, aber wenn ich den Wert zurückgebe mit return wird die Zahl gerundet ..

    VB.NET-Quellcode

    1. MessageBox.Show(Buffer)
    2. Dim SingleWert As Single = Datentypen.IntegerToSingle(Buffer)
    3. MessageBox.Show(SingleWert)
    4. Return SingleWert


    Ausgabe:

    1151802779 (Int32)
    (Wert wird umgewandelt ...)
    1339,925 (Korrekte Zahl!)
    (Wert wird übergeben an meine Messagebox)
    1337 (Warum wird aus 1339,925 jetzt 1337?)


    Warum? Wieso? Ich hoffe ihr könnt mir weiterhelfen! :)
    "Denken ist die schwerste Arbeit, die es gibt. Das ist wahrscheinlich auch der Grund, warum sich so wenig Leute damit beschäftigen." - Henry Ford

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Vultrax“ ()

    Wo nutzt du denn das Codesnippet?
    Sieht es ungefähr so aus?

    VB.NET-Quellcode

    1. Public Function Etwas(...) As Integer (oder Short)
    2. Return SingleWert
    3. End Function
    .
    Du solltest dann eventuell auch den Rückgabetypen richtig angeben.

    Vultrax schrieb:

    aber wenn ich den Wert
    als Integer

    Vultrax schrieb:

    zurückgebe mit return wird die Zahl gerundet
    Jou.
    Völlig korrekt.

    VB.NET-Quellcode

    1. Dim Pi = CInt(Math.PI)
    2. MessageBox.Show(Pi.ToString)
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!