在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
字符串在 Go 语言中以原生数据类型出现,使用字符串就像使用其他原生数据类型(int、bool、float32、float64 等)一样。 str := "hello world" ch := "中文"
字符串转义符Go 语言的字符串常见转义符包含回车、换行、单双引号、制表符等,如下表所示。
package main import ( "fmt" ) func main() { fmt.Println("str := \"c:\\Go\\bin\\go.exe\"") }
代码运行结果: str := "c:\Go\bin\go.exe"
这段代码中将双引号和反斜杠“\”进行转义。 字符串实现基于 UTF-8 编码Go 语言里的字符串的内部实现使用 UTF-8 编码。通过 rune 类型,可以方便地对每个 UTF-8 字符进行访问。当然,Go 语言也支持按传统的 ASCII 码方式进行逐字符访问。 定义多行字符串
在源码中,将字符串的值以双引号书写的方式是字符串的常见表达方式,被称为字符串字面量(string literal)。这种双引号字面量不能跨行。如果需要在源码中嵌入一个多行字符串时,就必须使用
const str = ` 第一行 第二行 第三行 \r\n ` fmt.Println(str)
代码运行结果: 第一行 第二行 第三行 \r\n
const codeTemplate = `// Generated by github.com/davyxu/cellnet/ protoc-gen-msg // DO NOT EDIT!{{range .Protos}} // Source: {{.Name}}{{end}} package {{.PackageName}} {{if gt .TotalMessages 0}} import ( "github.com/davyxu/cellnet" "reflect" _ "github.com/davyxu/cellnet/codec/pb" ) {{end}} func init() { {{range .Protos}} // {{.Name}}{{range .Messages}} cellnet.RegisterMessageMeta("pb","{{.FullName}}", reflect.TypeOf((*{{.Name}})(nil)).Elem(), {{.MsgID}}) {{end}} {{end}} } `
这段代码只定义了一个常量 codeTemplate,类型为字符串,使用
|
请发表评论