go程式大體上由 「package包」 「import引用包」 「main函式主題」 組成:
注意事項
var number_a int = 19
#更專業的初始化方法:
var (
a int
b int
c string
d bool
e = 67
)
var number_a int
number_a = 19
number_a :=19
方法三相當於方法二,但是與方法一有本質區別,方法一稱為初始化。go語言有個「不浪費」規定:當變數不使用時,變數不能賦值(賦值會占用記憶體空間)。但是方法一是初始化,可以在變數不使用時執行不報錯程式在記憶體中開闢乙個位置,然後將變數的值存入。存入的位置就是記憶體位址
變數直接儲存值,記憶體通常在棧中分配。
基本資料型別int、float、bool、string以及陣列和struct都屬於值型別
變數儲存的是乙個記憶體位址,這個位址存指向儲存的變數值。記憶體通常在堆上分配。通過gc**。
指標、slice、map、chan等都是引用型別
值型別在作為函式的形式引數時,直接拷貝到函式裡面稱為函式內的區域性變數,而引用型別(記憶體位址)是將記憶體位址真正的傳入了函式,對記憶體位址指向的變數值的修改就是對外部傳入的引用型別變數的值的修改,可以
理解為當引用型別傳入函式時,其實就變成了「全域性變數」(注意是記憶體位址指向的值變成全域性變數,記憶體位址本身不是)
值型別傳入函式,函式在新開闢記憶體空間來存放變數值,而引用型別只是複製一下記憶體位址
數字型別,主要有int、int8、int16、int32、int64、uint8、uint16、uint32、uint64、loat32、float64
注意:int8與int16是不同的資料型別:var a int8 、var b int32 = 19 。a和b是不同的資料型別 a=b 是錯誤的,因為資料型別不同布林型別的操作符有:* !、&&、|| *邏輯操作符: == 、!=、和 >=
數學操作符:+、-、*、/等等
go有字元型別,定義字元:var a byte = 『c』 ,注意值用 」 號字串型別的定義:var str string
GO語言基礎(一)
go語言中保留c語言中的注釋方法。每個檔案必須先宣告包,go語言中以包為管理單位。每個工程中只能有乙個main包,乙個資料夾即為乙個工程。每個程式必須包含main包,開頭處標明即可。package main go語言中不需要寫分號 import 通過import匯入包,可以匯入多個,分行寫,用雙引號...
Go 語言基礎
go 語言內建的運算子有 1.算術運算子 2.關係運算子 3.邏輯運算子 4.位運算子 將其先轉換為二進位制數,在根據如下表規則 p q p q p q p q 0 0 0 0 0 0 1 0 1 1 1 1 1 1 0 1 0 0 1 1如假定 a 60 b 13 其二進位制數轉換為 a 0011...
Go語言基礎
目錄 一.go語言內建關鍵字 二.go語言注釋方法 三.專案結構 四.程式結構 五.包的匯入 六.package的別名 七.可見性規則 單行注釋 多行注釋 go程式是通過package來組織的 只有package 名稱為main的包可以包含main函式 乙個可執行程式有且僅有乙個main包 初步練習...