我在Go中找到符文类型并且有一个简单的问题,但值得探索。
我认为它是int32的别名,目的是区分数字和字符值。
http://golang.org/pkg/builtin/#rune
但我对术语“符文”感到困惑,实际上它代表什么?例如uint == unsigned int
答案 0 :(得分:7)
符文代表信件。 ("符文"是一组相关字母表中的字母,称为符文字母,在采用拉丁字母之前用于编写各种日耳曼语。[Wikipedia])。但我对术语" rune"实际上它代表什么?例如uint == unsigned int
如果变量在Go中具有类型rune
,则您知道它旨在保存unicode代码点。 (rune
比codepoint
更短更清晰。但它是技术性的int32,即它在内存中的表示形式是int32。
答案 1 :(得分:4)
在一般意义上,Unicode“符文”只是一个数字,就像64(0x40)是ASCII和Unicode中“@”的代码一样。
package main
import "fmt"
func main() {
var f float64
f = 64
var b int8
b = 64
var u uint16
u = 64
var i int
i = 64
fmt.Println(f, b, u, i)
}
输出:
64 64 64 64
这试图证明[小]整数(以及这些文字)基本上是无类型的,即untyped。
相关:Rune Literals。