分享
  1. 首页
  2. 文章

golang学习笔记[5] 整型

zhouyunxuan · · 2499 次点击 · · 开始浏览
这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。


golang的整型总类众多,但一般只是使用使用int或者uintt就好了,


package main
import (
	"fmt"
	"unsafe"
)
func main() {
	var i1 int8 = 1 //1 byte
	var i2 int16 = 2 //2 byte
	var i3 int32 = 3 // 4 byte
	var i4 int64 = 4 // 8 byte
	var i5 int = 5 // 32位:4 64位:8
	var i6 uint8 = 1 // 1 byte
	var i7 uint16 = 2 // 2 byte
	var i8 uint32 = 3 // 4 byte
	var i9 uint64 = 4 // 8 byte
	var i10 uint = 5 // 32位:4 64位:8
	var i11 byte = 1 //相当于uint8 1 byte
	var i12 rune = 3 //相当于int32 4 byte
	var i13 uintptr = 6 // 32位:4 64位:8
	fmt.Println(unsafe.Sizeof(i13)) //8
	fmt.Println(i1, i2, i3, i4, i5, i6, i7, i8, i9, i10, i11, i12, i13) //1 2 3 4 5 1 2 3 4 5 1 3 6
}


int类型和int32或者int64都不可以直接相加减,只有同类型(类型名相同)才能相加减,golang不支持隐式转换。

package main
func main() {
	var i1 int = 1
	var i2 int32 = 2
	var i3 int64 = 3
	i4 := i1 + i2 
}

.\main.go:9:invalidoperation:i1+i2(mismatchedtypesintandint32)


使用int(变量名强制转换)

packagemain
import(
"fmt"
)
funcmain(){
vari1int=1
vari2int32=2
vari3int64=3
i4:=i1+int(i2)//int32强制转换为int
i5:=i1+int(i3)//int64强制转换为int
fmt.Println(i4,i5)
}










有疑问加站长微信联系(非本文作者)

本文来自:CSDN博客

感谢作者:zhouyunxuan

查看原文:golang学习笔记[5] 整型

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

关注微信
2499 次点击
暂无回复
添加一条新回复 (您需要 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传

用户登录

没有账号?注册
(追記) (追記ここまで)

今日阅读排行

    加载中
(追記) (追記ここまで)

一周阅读排行

    加载中

关注我

  • 扫码关注领全套学习资料 关注微信公众号
  • 加入 QQ 群:
    • 192706294(已满)
    • 731990104(已满)
    • 798786647(已满)
    • 729884609(已满)
    • 977810755(已满)
    • 815126783(已满)
    • 812540095(已满)
    • 1006366459(已满)
    • 692541889

  • 关注微信公众号
  • 加入微信群:liuxiaoyan-s,备注入群
  • 也欢迎加入知识星球 Go粉丝们(免费)

给该专栏投稿 写篇新文章

每篇文章有总共有 5 次投稿机会

收入到我管理的专栏 新建专栏