gpt4 book ai didi

cross-platform - 在 go/golang 中表示换行符的最便携/跨平台的方式是什么?

转载 作者:IT老高 更新时间:2023-10-28 13:01:35 37 4
gpt4 key购买 nike

目前,为了表示 go 程序中的换行符,我使用 \n。例如:

package main

import "fmt"


func main() {
fmt.Printf("%d is %s \n", 'U', string(85))
}

... 将产生 85 is U 后跟换行符。

但是,这似乎并不是跨平台的。看看其他语言,PHP 用一个全局常量 ( PHP_EOL ) 来表示它。 \n 是在 go/golang 中以跨平台特定方式表示换行符的正确方法吗?

最佳答案

我对此很好奇,所以决定看看 fmt.Println 究竟做了什么。 http://golang.org/src/pkg/fmt/print.go

如果您滚动到最底部,您将看到一个 if addnewline,其中始终使用 \n。我很难说这是否是最“跨平台”的方式,并且 Go 在早期最初与 linux 相关联,但这就是 std lib 的所在。

我原本打算建议只使用 fmt.Fprintln 这可能仍然有效,就好像当前的功能不合适一样,可以提交一个错误,然后代码只需要使用最新的 Go 工具链编译。

关于cross-platform - 在 go/golang 中表示换行符的最便携/跨平台的方式是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14493867/

37 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com