GO語言基礎(chǔ)入門第一個(gè)go程序解讀
1. 編寫HelloWorld
//filename: hello.go package main import "fmt" func main(){ fmt.Println("hello world!") }
2. 執(zhí)行g(shù)o程序
執(zhí)行g(shù)o程序由幾種方式
方式一:使用go run命令
step1:打開終端:
step2:進(jìn)入hello.go所在的目錄
step3:輸入go run hello.go命令并觀察運(yùn)行結(jié)果。
方式二:使用go build命令
【需要配置GOROOT、GOPATH,創(chuàng)建文件夾src、hello】
step1:打開終端:在任意文件路徑下,運(yùn)行: go install hello 【hello表示hello文件夾,不是hello.go】
也可以進(jìn)入項(xiàng)目(應(yīng)用包)的路徑,然后運(yùn)行: go install
step2:運(yùn)行g(shù)o程序 在F:/gowork/bin下(如果之前沒有bin目錄則會(huì)自動(dòng)創(chuàng)建),會(huì)發(fā)現(xiàn)出現(xiàn)了一個(gè)hello的可執(zhí)行文件,用如下命令運(yùn)行: ./hello
注意,在編譯生成go程序的時(shí),go實(shí)際上會(huì)去兩個(gè)地方找程序包: GOROOT下的src文件夾下,以及GOPATH下的src文件夾下。在程序包里,自動(dòng)找main包的main函數(shù)作為程序入口,然后進(jìn)行編譯。
3. 代碼解讀
- go語言用「包」來組織代碼,一個(gè)項(xiàng)目下只有一個(gè)main函數(shù), 代碼開始部分的 package main指明這個(gè)文件屬于哪個(gè)「包」。名為main的包比較特殊,它用來定義一個(gè)獨(dú)立的可執(zhí)行程序。【一個(gè)項(xiàng)目下只有一個(gè)main函數(shù)】
- import 告訴編譯器此源文件需要倒入那些包, 必須精確地導(dǎo)入所需要的包, 不能少導(dǎo),同時(shí)也不能多導(dǎo)。這點(diǎn)跟C語言不同, C語言可以導(dǎo)入不用的頭文件, 而Go是不可以的, 編譯不過?!緦?dǎo)入你需要使用的包,變量的使用也是一樣,定義你一定會(huì)使用的,不然編譯不通過】
- Println 表示 會(huì)根據(jù)你輸入格式原樣輸出并換行**【首字母大寫,表示public方法,小寫表示private方法,變量名大小寫很嚴(yán)格】
- func關(guān)鍵字定義了一個(gè)函數(shù)。
- main 函數(shù)是每一個(gè)可執(zhí)行程序所必須包含的,一般 來說都是在啟動(dòng)后第一個(gè)執(zhí)行的函數(shù)。
- Go語言不需要在語句后面用分號(hào)結(jié)尾?!酒鋵?shí)不是沒有分號(hào),編譯器會(huì)自動(dòng)將分號(hào)插入到標(biāo)記流中非空白行的末尾】
- 大括號(hào)的 "{"必須與func在同一行。不能另起一行?!痉駝t報(bào)錯(cuò),這和C語言不一樣,代碼風(fēng)格統(tǒng)一了】
- Go語言的注釋和C語言一樣, 用 // 注釋一行, 用/**/注釋多行。
4.總結(jié)
- 一個(gè)項(xiàng)目下只有一個(gè)main函數(shù)
- 導(dǎo)入你需要使用的包,變量的使用也是一樣,定義你一定會(huì)使用的,不然編譯不通過
- 語句其實(shí)不是沒有分號(hào),編譯器會(huì)自動(dòng)將分號(hào)插入到標(biāo)記流中非空白行的末尾大
- 括號(hào)的 "{"必須與func在同一行。不能另起一行
以上就是GO語言基礎(chǔ)入門第一個(gè)go程序解讀的詳細(xì)內(nèi)容,更多關(guān)于Go語言程序解讀的資料請(qǐng)關(guān)注本站其它相關(guān)文章!
版權(quán)聲明:本站文章來源標(biāo)注為YINGSOO的內(nèi)容版權(quán)均為本站所有,歡迎引用、轉(zhuǎn)載,請(qǐng)保持原文完整并注明來源及原文鏈接。禁止復(fù)制或仿造本網(wǎng)站,禁止在非www.sddonglingsh.com所屬的服務(wù)器上建立鏡像,否則將依法追究法律責(zé)任。本站部分內(nèi)容來源于網(wǎng)友推薦、互聯(lián)網(wǎng)收集整理而來,僅供學(xué)習(xí)參考,不代表本站立場(chǎng),如有內(nèi)容涉嫌侵權(quán),請(qǐng)聯(lián)系alex-e#qq.com處理。