Go基礎知識複習之數據類型的整型

上一篇我們已經知道go語言中的常量和iota(常量計數器)的相關知識
今天介紹go的數據類型之一:整型


在go語言中 整型分爲兩大類

  • 有符號:int8 int16 int32 int64
    有符號的在32位操作系統上 默認是int32,在64位操作系統上 默認是int64
  • 無符號:uint8 uint16 uint32
    無符號的在32位操作系統上 默認是uint32 在64位操作系統上 默認是uint64
    uintptr 無符號整型 用於存放一個指針

Go語言是無法直接定義二進制數的
怎麼理解這句話呢? 就是你定義一個整型的變量 並進行賦值
go語言會根據這個值去判斷它是屬於哪個進制的值
但唯獨 無法識別二進制!!!


用法

定義一個十進制的數

i1 := 101

定義一個八進制的數

i2 := 077

定義一個十六進制的數

i3 := 0x1234567

定義一個in8類型的整數

//int8類型的 整數9
i4 := int8(9)

整型之間的相互轉換

我們通過fmt這個包 來進行 整形之間的進制轉換
關於這個fmt包 我會在後面單獨寫一篇用來總結匯總
我們先看下如何進行轉換吧!
新建一個文件夾取名int 在文件夾下新建main.go 編寫一下內容:

package main

import "fmt"

func main(){

	i1 := 101  //這裏會識別成 是八進制值
	//輸出i1的十進制值
	fmt.Printf("%d \n",i1) //101
	//輸出i1的二進制值
	fmt.Printf("%b \n",i1) //1100101
	//輸出i1的八進制值
	fmt.Printf("%o \n",i1) //145
	//輸出i1的十六進制值
	fmt.Printf("%x \n",i1)//65

	i2 := 077  //這裏會識別成 是八進制值
	//輸出i2的二進制值
	fmt.Printf("%b \n",i2)//111111
	//輸出i2的十進制值
	fmt.Printf("%d \n",i2)//63
	//輸出i2的十六進制值
	fmt.Printf("%x \n",i2)//3f

	i3 := 0x1234567
	//輸出i3的二進制值
	fmt.Printf("%b \n",i3)//1001000110100010101100111
	//輸出i3的八進制值
	fmt.Printf("%o \n",i3)//110642547
	//輸出i3的十進制值
	fmt.Printf("%d \n",i3)//19088743
	
	//定義一個 int8類型的整數9
	i4 := int8(9)
	//輸出i4的值
	fmt.Println(i4) //9
	//輸出i4的類型
	fmt.Printf("%T \n",i4)//int8
	
}

這裏我們可以先暫時記住幾個fmt包裏面的Printf的幾個格式化類型
%d 輸出十進制值
%b 輸出二進制值
%o 輸出八進制值
%x 輸出十六進制值
%T 輸出變量所屬類型


關於Go語言的整型就介紹到這裏
未完待續。。。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章