rune is alias of int32

I think chendesheng‘s quote gets at the root cause best: Go uses a lot of signed values, not just for runes but array indices, Read/Write byte counts, etc. That‘s because uints, in any language, behave confusingly unless you guard every piece of arithmetic against overflow (for example if var a, b uint = 1, 2, a-b > 0 and a-b > 1000000: play.golang.org/p/lsdiZJiN7V). ints behave more like numbers in everyday life, which is a compelling reason to use them, and there is no equally compelling reason not to use them.

http://stackoverflow.com/questions/24714665/why-is-rune-in-golang-an-alias-for-int32-and-not-uint32

时间: 2024-10-21 23:57:35

rune is alias of int32的相关文章

Primitive Types in Go

Introduction As a strong  type static language, Go has many primitive types we will care about. In first level, they can be divided into two groups: non-collection and collections(e.g. array, slice, map). In this article we will talk three different

A Tour of Go Basic types

Go's basic types are bool string int int8 int16 int32 int64 uint uint8 uint16 uint32 uint64 uintptr byte // alias for uint8 rune // alias for int32 // represents a Unicode code point float32 float64 complex64 complex128 package main import ( "fmt&quo

03基础数据类型

Go语言将数据类型分为四类:基础类型.复合类型.引用类型和接口类型.基础类型包括:数字.字符串和布尔型.复合数据类型包括:数组和结构体.引用类型包括指针.切片.字典.函数.通道,它们都是对程序中一个变量或状态的间接引用,这意味着对任一引用类型数据的修改都会影响所有该引用的拷贝. 一:整型和运算符 1:Go语言同时提供了有符号和无符号类型的整数.有符号整型数类型有int8.int16.int32和int64四种,无符号整形数类型是uint8.uint16.uint32和uint64四种. 还有两种

GO 类型

变量 GO变量总是有固定的数值类型,类型决定了变量内存的长度和存储格式.我们只能修改变量,无法改变类型 编译后的机器码从不使用变量名,而是直接通过内存地址访问目标数据 定义 关键字 var 用于定义变量 var x int //自动初始化为0 var y = false //自动推断为bool类型 var x,y int 多变量赋值 var x,s = 100,"abc" var x,y = y+3,x+2 首先计算出所有右值,然后赋值 建议以组的方式定义变量 var(   x , y

A Tour of Go: Basics 1

Packages, variables and functions Packages packages中,以大写字母开头的name是exported name,当import package时,只有exported name可以被从外部访问. Functions 同type的连续参数可以只在最后指明type.函数可以有多个返回值. func swap(x, y string) (string, string) { return y, x } Go支持有name的返回值: 函数定义时就定义好返回变

golang学习总结

学习golang注意点: 导的包必须使用:或者使用_未使用的包,作用是调用该包下的初始化方法. 局部变量声明必须使用. go语言的包和java的相似,包名.变量访问 1. 初识go语言 1.1 Hello World package main import "fmt" func main() { fmt.Println("hello world"); } 1.2 go 数据类型 布尔: var a bool = true var b bool = false 整型:

Go 与 PHP 的语法对比

Go 是由 Google 设计的一门静态类型的编译型语言.它有点类似于 C,但是它包含了更多的优点,比如垃圾回收.内存安全.结构类型和并发性.它的并发机制使多核和网络机器能够发挥最大的作用.这是 GoLang 的最佳卖点之一.此外,Go 速度快,表现力强,干净且高效.这也是 Go 如此吸引开发者学习的原因. PHP 是一种动态类型语言,它使新手更容易编写代码.现在的问题是,PHP 开发人员能否从动态类型语言切换到像 Go 这样的静态类型语言?为了找到答案,让我们对比一下 Go 和 PHP 之间的

Golang学习笔记(2)---go语言基本类型

布尔型:bool 长度1字节 取值范围:true,false 注意:不可以用数字代表true或false 整型:Int 根据平台可能为32为或64位 8位整型:int8/uint8 长度:1字节 取值范围:-127~127,0~255 byte 字节型  其实就是 uint8的别名 16位整型:int16/uint16 长度:2字节 取值范围:-32768~32768,0~65535 32位整型:int32/uint32 长度:4字节 rune就是int32的别名 浮点型:float32/flo

go语言入门(一)

环境安装 Go 语言支持以下系统: Linux FreeBSD Mac OS X(也称为 Darwin) Window 安装包下载地址为:https://golang.org/dl/. Windows下直接下载对应的版本安装就可以了. Hello World 新建hello.go,输入以下代码: package main import "fmt" func main() { fmt.Println("Hello, World!") } 命令行运行 go run he