国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Golang > 正文

Go語言hello world實例

2020-04-01 19:24:50
字體:
來源:轉載
供稿:網友
這篇文章主要介紹了Go語言hello world實例,本文先是給出了hello world的代碼實例,然后對一些知識點和技巧做了解釋,需要的朋友可以參考下
 

在開始編寫應用之前,我們先從最基本的程序開始。就像你造房子之前不知道什么是地基一樣,編寫程序也不知道如何開始。因此,在本節中,我們要學習用最基本的語法讓Go程序運行起來。

程序

這就像一個傳統,在學習大部分語言之前,你先學會如何編寫一個可以輸出hello world的程序。

準備好了嗎?Let's Go!

 

復制代碼代碼如下:

package main

 

import "fmt"

func main() {
    fmt.Printf("Hello, world or 你好,世界 or καλημ ?ρα κóσμ or こんにちはせかい/n")
}

 

輸出如下:

 

復制代碼代碼如下:

Hello, world or 你好,世界 or καλημ ?ρα κóσμ or こんにちはせかい

 

詳解

首先我們要了解一個概念,Go程序是通過package來組織的

package <pkgName>(在我們的例子中是package main)這一行告訴我們當前文件屬于哪個包,而包名main則告訴我們它是一個可獨立運行的包,它在編譯后會產生可執行文件。除了main包之外,其它的包最后都會生成*.a文件(也就是包文件)并放置在$GOPATH/pkg/$GOOS_$GOARCH中(以Mac為例就是$GOPATH/pkg/darwin_amd64)。

 

復制代碼代碼如下:

每一個可獨立運行的Go程序,必定包含一個package main,在這個main包中必定包含一個入口函數main,而這個函數既沒有參數,也沒有返回值。

 

為了打印Hello, world...,我們調用了一個函數Printf,這個函數來自于fmt包,所以我們在第三行中導入了系統級別的fmt包:import "fmt"。

包的概念和Python中的package類似,它們都有一些特別的好處:模塊化(能夠把你的程序分成多個模塊)和可重用性(每個模塊都能被其它應用程序反復使用)。我們在這里只是先了解一下包的概念,后面我們將會編寫自己的包。

在第五行中,我們通過關鍵字func定義了一個main函數,函數體被放在{}(大括號)中,就像我們平時寫C、C++或Java時一樣。

大家可以看到main函數是沒有任何的參數的,我們接下來就學習如何編寫帶參數的、返回0個或多個值的函數。

第六行,我們調用了fmt包里面定義的函數Printf。大家可以看到,這個函數是通過<pkgName>.<funcName>的方式調用的,這一點和Python十分相似。

 

復制代碼代碼如下:

前面提到過,包名和包所在的文件夾名可以是不同的,此處的<pkgName>即為通過package <pkgName>聲明的包名,而非文件夾名。

 

最后大家可以看到我們輸出的內容里面包含了很多非ASCII碼字符。實際上,Go是天生支持UTF-8的,任何字符都可以直接輸出,你甚至可以用UTF-8中的任何字符作為標識符。

結論

Go使用package(和Python的模塊類似)來組織代碼。main.main()函數(這個函數主要位于主包)是每一個獨立的可運行程序的入口點。Go使用UTF-8字符串和標識符(因為UTF-8的發明者也就是Go的發明者),所以它天生就具有多語言的支持。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 连城县| 化德县| 武平县| 射阳县| 鹰潭市| 桐庐县| 兰州市| 定南县| 湄潭县| 凌源市| 清远市| 元谋县| 柞水县| 贵阳市| 双流县| 株洲县| 来凤县| 溧阳市| 广德县| 乌兰察布市| 泰兴市| 岱山县| 余庆县| 元江| 竹山县| 尉犁县| 辽宁省| 镇远县| 噶尔县| 宣武区| 西乌珠穆沁旗| 怀来县| 讷河市| 汝城县| 保靖县| 淮北市| 佛教| 乐清市| 金溪县| 鲁甸县| 望都县|