Falscher Thread?
@all:
Kann mir jemand sagen, warum ich sogar hier einen bescheuerten Fehler
bekomme? Ich glaube Purebasic ist bei Doubles und Quads in Procedures noch ziemlich verbugt.
Außerdem funktioniert das hier nicht:
Code: Alles auswählen
unit = 1
Debug PeekS(@"KBMBGBTBPBEBZBYB" + 1 * 2, 2)
Debug PeekS(@"KBMBGBTBPBEBZBYB" + unit * 2, 2)
Code: Alles auswählen
Procedure.s ByteCalc(Bytes.d, NbDecimals.l = 0)
Protected result.s, unit.l
unit = Round(Log(Bytes) / Log(1024), 0)
Bytes / Pow(1024, unit)
If unit
result = StrD(Bytes, NbDecimals) + " " + PeekS(@"KBMBGBTBPBEBZBYB" + unit * 2 - 2, 2)
Else
result = StrD(Bytes, 0) + " B"
EndIf
ProcedureReturn result
EndProcedure
Debug ByteCalc(21456985147)
Debug ByteCalc(21456985147, 1)
Debug ByteCalc(21456985147, 2)
Debug ByteCalc(21456985147, 4)
Debug ByteCalc(1024 * 1024 - 500, 4)
Debug ByteCalc(512, 1)
dann liegt es wirklich an irgend einer fehlerhaften Konfiguration von mir.
Aber probiert erstmal aus.