我在 Go 中找到了 rune 类型,并且有一个简单的问题,但值得解释一下。
我发现它是 int32 的别名,目的是区分数字和字符值。
http://golang.org/pkg/builtin/#rune
但是我对“符文”这个词感到困惑,它实际上代表什么?例如 uint == unsigned int
我在 Go 中找到了 rune 类型,并且有一个简单的问题,但值得解释一下。
我发现它是 int32 的别名,目的是区分数字和字符值。
http://golang.org/pkg/builtin/#rune
但是我对“符文”这个词感到困惑,它实际上代表什么?例如 uint == unsigned int
但是我对“符文”这个词感到困惑,它实际上代表什么?例如 uint == unsigned int
符文代表字母。(“符文”是一组被称为符文字母的相关字母表中的字母,在采用拉丁字母表之前,这些字母被用来书写各种日耳曼语。[维基百科])。
如果一个变量rune
在 Go 中有类型,你就知道它是用来保存一个 unicode 代码点的。(rune
比codepoint
) 更短更清晰。但它是技术上的 int32,即它在内存中的表示是 int32。
在一般意义上,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
这试图表明的是 [small] 整数(以及此类文字)基本上是无类型的,即untyped。
相关:符文文字。