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  }