// Parsing numbers from strings is a basic but common task // in many programs; here's how to do it in Go. package main // The built-in package `strconv` provides the number // parsing. import ( "fmt" "strconv" ) func main() { // With `ParseFloat`, this `64` tells how many bits of // precision to parse. f, _ := strconv.ParseFloat("1.234", 64) fmt.Println(f) // For `ParseInt`, the `0` means infer the base from // the string. `64` requires that the result fit in 64 // bits. i, _ := strconv.ParseInt("123", 0, 64) fmt.Println(i) // `ParseInt` will recognize hex-formatted numbers. d, _ := strconv.ParseInt("0x1c8", 0, 64) fmt.Println(d) // A `ParseUint` is also available. u, _ := strconv.ParseUint("789", 0, 64) fmt.Println(u) // `Atoi` is a convenience function for basic base-10 // `int` parsing. k, _ := strconv.Atoi("135") fmt.Println(k) // Parse functions return an error on bad input. _, e := strconv.Atoi("wat") fmt.Println(e) }