這篇文章主要講解了“怎么編譯go語(yǔ)言程序”,文中的講解內(nèi)容簡(jiǎn)單清晰,易于學(xué)習(xí)與理解,下面請(qǐng)大家跟著小編的思路慢慢深入,一起來(lái)研究和學(xué)習(xí)“怎么編譯go語(yǔ)言程序”吧!
成都創(chuàng)新互聯(lián)公司專注于新晃企業(yè)網(wǎng)站建設(shè),響應(yīng)式網(wǎng)站設(shè)計(jì),商城網(wǎng)站定制開發(fā)。新晃網(wǎng)站建設(shè)公司,為新晃等地區(qū)提供建站服務(wù)。全流程定制制作,專業(yè)設(shè)計(jì),全程項(xiàng)目跟蹤,成都創(chuàng)新互聯(lián)公司專業(yè)和態(tài)度為您提供的服務(wù)Go語(yǔ)言是編譯型的靜態(tài)語(yǔ)言(和C語(yǔ)言一樣),所以在運(yùn)行Go語(yǔ)言程序之前,先要將其編譯成二進(jìn)制的可執(zhí)行文件。
可以通過(guò)Go語(yǔ)言提供的go build
或者go run
命令對(duì)Go語(yǔ)言程序進(jìn)行編譯:
go build
命令可以將Go語(yǔ)言程序代碼編譯成二進(jìn)制的可執(zhí)行文件,但是需要我們手動(dòng)運(yùn)行該二進(jìn)制文件;
go run
命令則更加方便,它會(huì)在編譯后直接運(yùn)行Go語(yǔ)言程序,編譯過(guò)程中會(huì)產(chǎn)生一個(gè)臨時(shí)文件,但不會(huì)生成可執(zhí)行文件,這個(gè)特點(diǎn)很適合用來(lái)調(diào)試程序。
我們可以直接使用 Windows 自帶的命令行工具(也叫 CMD 窗口或者命令提示符)來(lái)編譯Go語(yǔ)言程序。微軟后來(lái)對(duì)命令行工具進(jìn)行了一次升級(jí),并更名為 Powershell,power 是更加強(qiáng)大的意思。
打開命令行工具的方式多種多樣,下面列出了比較常用的兩種:
可以在開始菜單中打開命令行工具,然后 cd 到 Go 源文件所在的目錄。
也可以在 Go 源文件所在目錄的空白處按住 Shift 鍵并單擊鼠標(biāo)右鍵,然后在彈出菜單中選擇“在此處打開命令行窗口”或者“在此處打開 Powershell 窗口”,這樣會(huì)自動(dòng) cd 到 Go 源文件所在的目錄,如下圖所示。這種方式更加方便,推薦大家使用。
提示:cd 是命令行工具的一個(gè)命令,用來(lái)改變當(dāng)前所在的目錄,是 change directory 的縮寫。
go build 命令
go build命令用來(lái)啟動(dòng)編譯,它可以將Go語(yǔ)言程序與相關(guān)依賴編譯成一個(gè)可執(zhí)行文件,其語(yǔ)法格式如下。
go build fileName
其中 fileName 為所需要的參數(shù),可以是一個(gè)或者多個(gè) Go 源文件名(當(dāng)有多個(gè)參數(shù)時(shí)需要使用空格將兩個(gè)相鄰的參數(shù)隔開),也可以省略不寫。
使用 go build 命令進(jìn)行編譯時(shí),不同參數(shù)的執(zhí)行結(jié)果也是不同的。
1) 當(dāng)參數(shù)不為空時(shí)
如果 fileName 為同一 main 包下的所有源文件名(可能有一個(gè)或者多個(gè)),編譯器將生成一個(gè)與第一個(gè) fileName 同名的可執(zhí)行文件(如執(zhí)行g(shù)o build abc.go def.go ...會(huì)生成一個(gè) abc.exe 文件);如果 fileName 為非 main 包下的源文件名,編譯器將只對(duì)該包進(jìn)行語(yǔ)法檢查,不生成可執(zhí)行文件。
2) 當(dāng)參數(shù)為空時(shí)
如果當(dāng)前目錄下存在 main 包,則會(huì)生成一個(gè)與當(dāng)前目錄名同名的“目錄名.exe”可執(zhí)行文件(如在 hello 目錄中執(zhí)行g(shù)o build命令時(shí),會(huì)生成 hello.exe 文件);如果不存在 main 包,則只對(duì)當(dāng)前目錄下的程序源碼進(jìn)行語(yǔ)法檢查,不會(huì)生成可執(zhí)行文件。
使用go build
命令對(duì)我們上一節(jié)編寫的程序進(jìn)行編譯,運(yùn)行結(jié)果如下所示:
D:\code> go build .\demo.go D:\code> .\demo.exe Hello World!
其中D:\code>
對(duì)應(yīng)的是當(dāng)前目錄,也就是 D 盤下的 code 文件夾,它是命令行工具自動(dòng)添加的,不屬于編譯命令的一部分。
第 1 行go build
命令后面的參數(shù)中,.\
表示當(dāng)前目錄。在Windows 系統(tǒng)中,當(dāng)前目錄使用.\
表示;在類 Unix 系統(tǒng)(例如 Linux、MacOS 等)中,當(dāng)前目錄使用./
表示。
注意,這里的go build命令中
.\
可以省略不寫,不會(huì)影響編譯。
另外,go build
命令只有在執(zhí)行出錯(cuò)的情況下才會(huì)有返回信息,執(zhí)行成功的話是沒有返回信息的,但是會(huì)在當(dāng)前目錄生成一個(gè)與 main 包文件同名的 .exe
可執(zhí)行文件,如下圖所示。
第 2 行中的.\demo.exe
表示執(zhí)行當(dāng)前目錄下的 demo.exe 程序。
第 3 行則是 demo.exe 程序的運(yùn)行結(jié)果。
go run 命令
除了使用go build
命令外,Go語(yǔ)言還為我們提供了go run
命令,go run
命令將編譯和執(zhí)行指令合二為一,會(huì)在編譯之后立即執(zhí)行Go語(yǔ)言程序,但是不會(huì)生成可執(zhí)行文件。
go run命令的語(yǔ)法格式如下:
go run fileName
其中 fileName
為所需要的參數(shù),參數(shù)必須是同一 main 包下的所有源文件名,并且不能為空。
使用go run
命令對(duì)我們上一節(jié)編寫的程序進(jìn)行編譯,運(yùn)行結(jié)果如下所示:
D:\code> go run demo.go Hello World!
感謝各位的閱讀,以上就是“怎么編譯go語(yǔ)言程序”的內(nèi)容了,經(jīng)過(guò)本文的學(xué)習(xí)后,相信大家對(duì)怎么編譯go語(yǔ)言程序這一問題有了更深刻的體會(huì),具體使用情況還需要大家實(shí)踐驗(yàn)證。這里是創(chuàng)新互聯(lián)網(wǎng)站建設(shè)公司,,小編將為大家推送更多相關(guān)知識(shí)點(diǎn)的文章,歡迎關(guān)注!
新聞標(biāo)題:怎么編譯go語(yǔ)言程序-創(chuàng)新互聯(lián)
本文來(lái)源:http://jinyejixie.com/article4/jshoe.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供靜態(tài)網(wǎng)站、做網(wǎng)站、營(yíng)銷型網(wǎng)站建設(shè)、網(wǎng)站改版、網(wǎng)站建設(shè)、響應(yīng)式網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容