英文:
Does fmt.Println receive any type of argument?
问题
fmt.Println
是 Go 语言中的一个函数,用于将给定的参数打印到标准输出。它可以接受不同类型的参数,包括 int
和 string
。
在你提供的代码中,ln
函数使用了一个空接口类型 interface{}
作为参数。空接口类型可以接受任意类型的值作为参数。在 ln
函数内部,fmt.Println
函数被调用,并将参数 a
打印到标准输出。
要使上述代码正常工作,你只需要确保你的代码中导入了 fmt
包,并正确调用了 ln
函数,并传递了正确的参数。在 main
函数中,你可以调用 ln
函数并传递一个 int
类型的值 123
,以及一个 string
类型的值 "test"
。这样,这两个值将被打印到标准输出。
请注意,代码中的 import "fmt"
应该是 import "fmt"
,而不是 import "fmt"
。
英文:
How does fmt.Println
work? Why I can pass an int
or a string
to it?
How can I make the code below work?
package main
import "fmt"
func ln(a interface{}) {
fmt.Println(a)
}
func main() {
ln(123)
ln("test")
}
答案1
得分: 2
例如,
package main
import "fmt"
func ln(a interface{}) {
fmt.Println(a)
}
func main() {
ln(123)
ln("test")
}
输出:
123
test
func Println(a ...interface{}) (n int, err error)
Go语言的fmt
包使用了reflect
包。
英文:
For example,
package main
import "fmt"
func ln(a interface{}) {
fmt.Println(a)
}
func main() {
ln(123)
ln("test")
}
Output:
123
test
> func Println
>
> func Println(a ...interface{}) (n int, err error)
The Go fmt
package uses the reflect
package.
通过集体智慧和协作来改善编程学习和解决问题的方式。致力于成为全球开发者共同参与的知识库,让每个人都能够通过互相帮助和分享经验来进步。
评论