go 0.3 每日一题 不定参数

2021-12-08  本文已影响0人  秸秆混凝烧结工程师

不定参数的代码展示

"""
package main

import "fmt"

func main() {
f()

}

func f(a ...int) {
// %#v 会同时打印类型和值
fmt.Printf("%#v",a)

}

"""
问题 : 上述代码会输出什么?
A:[]int{};B:[]int(nil);C:panic;D:编译错误

答案: B

解释:

a 的类型是 []int,调用 f 时,没有传递任何参数,因此相当于值是 nil,即 a 的类型是 []int,值是 nil。而 fmt.Printf 的动词 %#v 会同时打印类型和值。所以结果是 B

上一篇 下一篇

猜你喜欢

热点阅读