go语言64位操作系统int为32位

最近使用LiteIDE开发GO语言,运行程序发现一个问题,自己电脑明明是64位,运行时发现int确是32位的。
首先看一下LiteIDE配置。
在这里插入图片描述
没有任何问题,

运行程序:
bit := 32 << (^uint(0) >> 63)
fmt.Println(bit)
bit返回的还是32.
解决办法:在CMD中输入go env
在这里插入图片描述
发现系统的环境变量GOARCH值是:386
进入环境变量设置,将 386修改为 amd64 即可。
在这里插入图片描述
问题分析:刚开始配置环境变量的时候不理解原理,随便在网上找的配置就进行配。问题困扰了好久,今天偶尔解决了,心中一大祸患啊。后来翻阅资料发现:
GOARCH:目标可执行程序操作系统构架,包括 386,amd64,arm
386:80386的广泛应用,将PC从16位时代带入了32位时代
amd64:把16位的Intel 8086扩充成32位的80386般,去把x86架构扩充成64位版本,且兼容原有标准
arm:支持Thumb(16位)/ARM(32位)双指令集,能很好的兼容8位/16位器件

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值