github.com/graybobo/golang.org-package-offline-cache@v0.0.0-20200626051047-6608995c132f/x/talks/2012/goforc/stmts.go (about) 1 // +build OMIT 2 3 package main 4 5 import "fmt" 6 7 const digits = "0123456789abcdef" 8 9 func itoa(x, base int) string { 10 // START OMIT 11 t := x 12 switch { 13 case x == 0: 14 return "0" 15 case x < 0: 16 t = -x 17 } 18 var s [32]byte 19 i := len(s) 20 for t != 0 { // Look, ma, no ()'s! 21 i-- 22 s[i] = digits[t%base] 23 t /= base 24 } 25 if x < 0 { 26 i-- 27 s[i] = '-' 28 } 29 return string(s[i:]) 30 // STOP OMIT 31 } 32 33 func main() { 34 fmt.Println(itoa(-42, 2)) 35 }