GO語言學習|第一天

之前感受學習GO語言應該會很難,由於GO語言一直被認爲是21世紀的C語言,那就必定是明珠上的明珠了。可是今天第一次學習,感受仍是很好的,我有一點C語言學習的基礎這樣的話,學習起來仍是比較有意思的。函數

第一個程序語言仍是正常的國際慣例:學習

hello world!spa

可是GO語言比C語言的複雜之處就是前面的東西:.net

複製代碼
package main

import 「fmt」

func main() {

    fmt.Println("Hello,world!")

}
複製代碼

在今天的學習中感受GO語言仍是比較能夠的。code

明天再來。blog

在控制檯輸出「Hello World!」很是簡單,僅須要幾行代碼就能夠搞定,以下所示:字符串

複製代碼
package main    // 聲明 main 包

import (
    "fmt"       // 導入 fmt 包,打印字符串是須要用到
   )

func main() {   // 聲明 main 主函數
    fmt.Println("Hello World!") // 打印 Hello World!
}
複製代碼

你們也許不明白這些代碼的含義,不要緊,下面就來一一介紹。
package(建立包)Go語言以「包」做爲管理單位,每一個 Go 源文件必須先聲明它所屬的包,因此咱們會看到每一個 Go 源文件的開頭都是一個 package 聲明,格式以下:get

 

package name

 

其中 package 是聲明包名的關鍵字,name 爲包的名字。

Go語言的包與文件夾是一一對應的,它具備如下幾點特性:編譯器

  • 一個目錄下的同級文件屬於同一個包。string

  • 包名能夠與其目錄名不一樣。

  • main 包是Go語言程序的入口包,一個Go語言程序必須有且僅有一個 main 包。若是一個程序沒有 main 包,那麼編譯時將會出錯,沒法生成可執行文件。

import(導入包)在包聲明以後,是 import 語句,用於導入程序中所依賴的包,導入的包名使用雙引號""包圍,格式以下:

 

import "name"

 

其中 import 是導入包的關鍵字,name 爲所導入包的名字。

代碼第 4 行導入了 fmt 包,這行代碼會告訴 Go 編譯器,咱們須要用到 fmt 包中的函數或者變量等,fmt 包是Go語言標準庫爲咱們提供的,用於格式化輸入輸出的內容(相似於C語言中的 stdio.h 頭文件),相似的還有 os 包、io 包等,後面咱們會詳細介紹。

另外有一點須要注意,導入的包中不能含有代碼中沒有使用到的包,不然Go編譯器會報編譯錯誤,例如 imported and not used: "xxx","xxx" 表示包名。

也可使用一個 import 關鍵字導入多個包,此時須要用括號( )將包的名字包圍起來,而且每一個包名佔用一行,也就是寫成下面的樣子:

 

import(
    "name1"
    "name2"
)

 

main 函數代碼的第 7 行建立了一個 main 函數,它是Go語言程序的入口函數,也即程序啓動後運行的第一個函數。main 函數只能聲明在 main 包中,不能聲明在其餘包中,而且,一個 main 包中也必須有且僅有一個 main 函數。

C/C++ 程序的入口函數也是 main(),一個 C/C++ 程序有且只能有一個 main() 函數。

main 函數是自定義函數的一種,在Go語言中,全部函數都以關鍵字 func 開頭的,定義格式以下所示:

 

func 函數名 (參數列表) (返回值列表){
    
函數體 }

 

格式說明以下:

  • 函數名:由字母、數字、下畫線_組成,其中,函數名的第一個字母不能爲數字,而且,在同一個包內,函數名稱不能重名。

  • 參數列表:一個參數由參數變量和參數類型組成,例如 func foo( a int, b string )。

  • 返回值列表:能夠是返回值類型列表,也能夠是參數列表那樣變量名與類型的組合,函數有返回值時,必須在函數體中使用 return 語句返回。

  • 函數體:可以被重複調用的代碼片斷。


注意:Go語言函數的左大括號{必須和函數名稱在同一行,不然會報錯。
打印 Hello World代碼的第 8 行 fmt.Println("Hello World!") 中,Println 是 fmt 包中的一個函數,它用來格式化輸出數據,好比字符串、整數、小數等,相似於C語言中的 printf 函數。這裏咱們使用 Println 函數來打印字符串,也就是( )裏面使用""包裹的部分。

注意,Println 函數打印完成後會自動換行,ln是 line 的縮寫。

點號.是Go語言運算符的一種,這裏表示調用 fmt 包中的 Println 函數。

另外,代碼 fmt.Println("Hello World!") 的結尾,不須要使用;來做爲結束符,Go 編譯器會自動幫咱們添加,固然,在這裏加上;也是能夠的。

到這裏,相信你們已經知道如何建立一個簡單的Go語言程序了,趕快動手試試吧!

下一節將爲你們演示,如何運行咱們所編寫的Go語言程序。

相關文章
相關標籤/搜索