-
Notifications
You must be signed in to change notification settings - Fork 18.6k
Closed
Labels
Description
how can i convert big.Float to big.Int
package main
import "fmt"
import "math/big"
func FloatToC(val float64) *big.Int {
bigval := new(big.Float)
bigval.SetFloat64(val)
coin := new(big.Float)
coin.SetInt(big.NewInt(1000000000000000000))
bigval.Mul(bigval, coin)
result := new(big.Int)
f, _ := bigval.Uint64()
result.SetUint64(f)
return result
}
func main() {
fmt.Println("vim-go")
fmt.Println(FloatToC(float64(10)))
fmt.Println(FloatToC(float64(20)))
fmt.Println(FloatToC(float64(30)))
fmt.Println(FloatToC(float64(40)))
fmt.Println(FloatToC(float64(50)))
fmt.Println(FloatToC(float64(100)))
fmt.Println(FloatToC(float64(1000)))
fmt.Println(FloatToC(float64(10000)))
}
this snippet code will be overflow.