diff --git a/ch1-basic/ch1-03-array-string-and-slice.md b/ch1-basic/ch1-03-array-string-and-slice.md index 8de216a..c17d9ef 100644 --- a/ch1-basic/ch1-03-array-string-and-slice.md +++ b/ch1-basic/ch1-03-array-string-and-slice.md @@ -365,8 +365,8 @@ type SliceHeader struct { ```go var ( - a []int // 空切片, 和 nil 相等 - b = []int{} // 空切片, 和 nil 相等 + a []int // nil切片, 和 nil 相等, 一般用来表示一个不存在的切片 + b = []int{} // 空切片, 和 nil 不相等, 一般用来表示一个空的集合 c = []int{1, 2, 3} // 有3个元素的切片, len和cap都为3 d = c[:2] // 有2个元素的切片, len为2, cap为3 e = c[0:2:cap(c)] // 有2个元素的切片, len为2, cap为3 diff --git a/ch1-basic/ch1-06-goroutine.md b/ch1-basic/ch1-06-goroutine.md index b0f221b..53f0260 100644 --- a/ch1-basic/ch1-06-goroutine.md +++ b/ch1-basic/ch1-06-goroutine.md @@ -139,13 +139,13 @@ Go语言实现生产者消费者并发很简单: // 生产者: 生成 factor 整数倍的序列 func Producer(factor int, out chan<- int) { for i := 0; ; i++ { - item <- i*factor + out <- i*factor } } // 消费者 func Consumer(in <-chan int) { - for _, v := range in { + for v := range in { fmt.Println(v) } } @@ -174,9 +174,9 @@ func main() { go Consumer(ch) // 消费 生成的队列 // Ctrl+C 退出 - ch := make(chan os.Signal, 1) - signal.Notify(ch, syscall.SIGINT, syscall.SIGTERM) - fmt.Printf("quit (%v)\n", <-ch) + sig := make(chan os.Signal, 1) + signal.Notify(sig, syscall.SIGINT, syscall.SIGTERM) + fmt.Printf("quit (%v)\n", <-sig) } ```