Angenommen, ich habe eine API, die es mir nur erlaubt, Floats oder Float-Arrays zu speichern. Allerdings möchte ich hier ganzzahlige Werte speichern.Speichern von Ints als Gleitkommazahlen
Ich verstehe (grob), dass ich ziemlich gut bin mit einem Straight Cast bis zu 2^23, aber was, wenn ich höher gehen will? Gibt es irgendeine Möglichkeit, dass ich mehr von den 32 Bits eines Floats ausnutzen kann und sicher sein werde, dass ich dieselbe Nummer zurückbekomme?
Zur Klarstellung:
ich mit Pixars PRMan einige Operationen auf Punktwolken mache (also RenderMan.). Ich kann in C oder C++ schreiben, indem ich mit der vorkompilierten Punktwolken-API verlinke. PRMan muss zu keinem Zeitpunkt diese Ints verwenden, die ich speichere; Ich brauche es nur, um es mir intakt zu übergeben, nachdem ich andere Daten an den Punkten bearbeitet habe.
In welcher Sprache sprechen wir? –
Ich habe ein wenig geklärt. =] –
Es ist auch wichtig zu wissen, auf welcher Plattform Sie wissen, wie Floats implementiert sind. Aber es ist wahrscheinlich eine * wirklich * sichere Wette, dass Sie IEEE Floats verwenden. –