Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ; negative
- $before = 0.00002001 * 2 / 2
- $after = __num64tostr($before)
- MsgBox(0, "before: " & $before, "after: " & $after)
- ;~ ; positive
- $before = 59584773894018382 * 2 / 2
- $after = __num64tostr($before)
- MsgBox(0, "before: " & $before, "after: " & $after)
- Func __num64tostr($dec)
- If StringRegExp($dec, "e") = False Then Return $dec
- Local $split = StringSplit($dec, "e", 1)
- If StringLeft($split[2], 1) = "-" Then
- $split[2] = Number(StringTrimLeft($split[2], 1))
- Local $ret = "0."
- For $i = 1 To $split[2]
- $ret &= "0"
- Next
- Return $ret & Number($split[1]) * (10^$split[2])
- Else
- Local $struct = DllStructCreate("int64;")
- DllStructSetData($struct, 1, Number($split[1]) * (10^Number($split[2])))
- Return DllStructGetData($struct, 1)
- EndIf
- EndFunc
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement