fix errata

This commit is contained in:
chai2010
2016-01-07 15:02:42 +08:00
parent 5f3f901bf9
commit ca365a301a
9 changed files with 9 additions and 9 deletions

View File

@@ -28,7 +28,7 @@ Unicode字符rune類型是和int32等價的類型通常用於表示一個Unic
對於上表中前兩行的運算符,例如+運算符還有一個與賦值相結合的對應運算符+=,可以用於簡化賦值語句。
整數的算術運算符+、-、`*``/`可以適用與於整數、浮點數和複數,但是取模運算符%僅用於整數間的運算。對於不同編程語言,%取模運算的行爲可能併不相同。在Go語言中%取模運算符的符號和被取模數的符號總是一致的,因此`-5%3``-5%-3`結果都是-2。除法運算符`/`的行爲則依賴於操作數是否爲全爲整數,比如`5.0/4.0`的結果是1.25但是5/4的結果是1因爲整數除法會向着0方向截斷餘數。
算術運算符+、-、`*``/`可以適用與於整數、浮點數和複數,但是取模運算符%僅用於整數間的運算。對於不同編程語言,%取模運算的行爲可能併不相同。在Go語言中%取模運算符的符號和被取模數的符號總是一致的,因此`-5%3``-5%-3`結果都是-2。除法運算符`/`的行爲則依賴於操作數是否爲全爲整數,比如`5.0/4.0`的結果是1.25但是5/4的結果是1因爲整數除法會向着0方向截斷餘數。
如果一個算術運算的結果不管是有符號或者是無符號的如果需要更多的bit位才能正確表示的話就説明計算結果是溢出了。超出的高位的bit位部分將被丟棄。如果原始的數值是有符號類型而且最左邊的bit爲是1的話那麽最終結果可能是負的例如int8的例子

View File

@@ -116,7 +116,7 @@ bytes包還提供了Buffer類型用於字節slice的緩存。一個Buffer開始
```Go
gopl.io/ch3/printints
// intsToString is like fmt.Sprintf(values) but adds commas.
// intsToString is like fmt.Sprint(values) but adds commas.
func intsToString(values []int) string {
var buf bytes.Buffer
buf.WriteByte('[')

View File

@@ -16,7 +16,7 @@ FormatInt和FormatUint函數可以用不同的進製來格式化數字
fmt.Println(strconv.FormatInt(int64(x), 2)) // "1111011"
```
fmt.Printf函數的%b、%d、%u和%x等參數提供功能往往比strconv包的Format函數方便很多特别是在需要包含附加額外信息的時候
fmt.Printf函數的%b、%d、%o和%x等參數提供功能往往比strconv包的Format函數方便很多特别是在需要包含附加額外信息的時候
```Go
s := fmt.Sprintf("x=%b", x) // "x=1111011"

View File

@@ -39,7 +39,7 @@ func parseIPv4(s string) IP {
const noDelay time.Duration = 0
const timeout = 5 * time.Minute
fmt.Printf("%T %[1]v\n", noDelay) // "time.Duration 0"
fmt.Printf("%T %[1]v\n", timeout) // "time.Duration 5m0s
fmt.Printf("%T %[1]v\n", timeout) // "time.Duration 5m0s"
fmt.Printf("%T %[1]v\n", time.Minute) // "time.Duration 1m0s"
```