Go语言-整数类型

Go语言的整数类型一共有10个。
  
    其中计算架构相关的整数类型有两个,即:有符号的整数类型int和无符号的整数类型uint
  
    顺便提一下,有符号的整数类型会使用最高位的比特(bit)表示整数的正负。显然,这会对它能表示的整数的范围有一定的损耗(使其缩小)。而无符号的整数类型会使用所有的比特位来表示数值。如此类型的值均为正数。这也是用“无符号的”来形容它们的原因。
  
    言归正传,为什么说这两个整数类型是计算架构相关的呢?这是因为,在不同的计算架构的计算机之上,它们体现的宽度是不同的。宽度即指存储一个某类型的值所需要的空间。空间的单位可以是比特,也可以是字节(byte)。请看下表。

    我想你应该已经能够悟到它们的对应关系了。
  
    除了这两个计算架构相关的整数类型之外,还有8个可以显式表达自身宽度的整数类型。如下表所示。  

    可以看到,这8个整数类型的宽度已经表现在它们的名称中了。


   我们已经知道了每个整数类型的宽度,那么它们的宽度意味着什么呢?下面这张表已有所描述。


  
  如上所示,类型int8的数值表示范围为[-128,127],而类型uint16的数值表示范围为[0,65535],等等。
  
    以我们的常识知道,在数学中整数一般是以10进制来表示的,而在计算机中整数则必是以2进制来表示和存储的。当然,在计算机科学领域,整数的表示形式还包括了8进制16进制。下面我们就来说说怎样这几种表示法在Go语言中表示整数。
  
    最显而易见的是10进制表示法。如果我们要在声明一个名为num1int类型变量时给它赋予12这个值,那么这样书写即可:

var num1 int = 12

    这是最容易被我们理解的方式了。不过,如果我们要分别以8进制16进制为变量num1赋值,那么需要:

num1 = 014 // 用“0”作为前缀以表明这是8进制表示法。

或:

num1 = 0xC // 用“0x”作为前缀以表明这是16进制表示法。

(注意,为已声明的变量赋值,无需再在等号左边加入关键字var和变量类型)


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值