mirror of
https://github.com/gopl-zh/gopl-zh.github.com.git
synced 2025-08-15 19:12:35 +00:00
good good study, day day up!
This commit is contained in:
33
vendor/gopl.io/ch5/sum/main.go
generated
vendored
Normal file
33
vendor/gopl.io/ch5/sum/main.go
generated
vendored
Normal file
@@ -0,0 +1,33 @@
|
||||
// Copyright © 2016 Alan A. A. Donovan & Brian W. Kernighan.
|
||||
// License: https://creativecommons.org/licenses/by-nc-sa/4.0/
|
||||
|
||||
// See page 142.
|
||||
|
||||
// The sum program demonstrates a variadic function.
|
||||
package main
|
||||
|
||||
import "fmt"
|
||||
|
||||
//!+
|
||||
func sum(vals ...int) int {
|
||||
total := 0
|
||||
for _, val := range vals {
|
||||
total += val
|
||||
}
|
||||
return total
|
||||
}
|
||||
|
||||
//!-
|
||||
|
||||
func main() {
|
||||
//!+main
|
||||
fmt.Println(sum()) // "0"
|
||||
fmt.Println(sum(3)) // "3"
|
||||
fmt.Println(sum(1, 2, 3, 4)) // "10"
|
||||
//!-main
|
||||
|
||||
//!+slice
|
||||
values := []int{1, 2, 3, 4}
|
||||
fmt.Println(sum(values...)) // "10"
|
||||
//!-slice
|
||||
}
|
Reference in New Issue
Block a user