溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Go語言兩種執(zhí)行流程的方式詳解

發(fā)布時(shí)間:2020-04-23 11:50:40 來源:億速云 閱讀:570 作者:小新 欄目:編程語言

本篇文章和大家了解一下Go語言兩種執(zhí)行流程的方式詳解。有一定的參考價(jià)值,有需要的朋友可以參考一下,希望對(duì)大家有所幫助。

Go語言兩種執(zhí)行流程的方式詳解

如果是對(duì)源代碼編譯后,再執(zhí)行,Go的執(zhí)行流程如下圖:

Go語言兩種執(zhí)行流程的方式詳解

go build生成的可執(zhí)行文件會(huì)在當(dāng)前目錄內(nèi)

如果是對(duì)源代碼直接執(zhí)行g(shù)o run 源文件操作,Go的執(zhí)行流程如下圖

Go語言兩種執(zhí)行流程的方式詳解

兩種執(zhí)行流程的方式說明:

1、如果我們先編譯生成了可執(zhí)行文件,我們可以將該可執(zhí)行文件拷貝到?jīng)]有g(shù)o開發(fā)環(huán)境的機(jī)器上,仍然可以運(yùn)行。

2、如果我們是直接go run 源文件,那么我們?nèi)绻诹硗庖粋€(gè)機(jī)器上這么運(yùn)行,也需要go開發(fā)環(huán)境,否則無法執(zhí)行。

3、在編譯時(shí),編譯器會(huì)將程序運(yùn)行以來的庫文件包含在可執(zhí)行文件中,所以,可執(zhí)行文件變大了很多。

示例:

go build index.go

Go語言兩種執(zhí)行流程的方式詳解

go run index.go

Go語言兩種執(zhí)行流程的方式詳解

go run、go build、go install命令解釋

go run:go run 編譯并直接運(yùn)行程序,它會(huì)產(chǎn)生一個(gè)臨時(shí)文件(但不會(huì)生成 .exe 文件),直接在命令行輸出程序執(zhí)行結(jié)果,方便用戶調(diào)試。

go build:go build 用于測(cè)試編譯包,主要檢查是否會(huì)有編譯錯(cuò)誤,如果是一個(gè)可執(zhí)行文件的源碼(即是 main 包),就會(huì)直接生成一個(gè)可執(zhí)行文件。

go install:go install 的作用有兩步:第一步是編譯導(dǎo)入的包文件,所有導(dǎo)入的包文件編譯完才會(huì)編譯主程序;第二步是將編譯后生成的可執(zhí)行文件放到 bin 目錄下($GOPATH/bin),編譯后的包文件放到 pkg 目錄下($GOPATH/pkg)

關(guān)于Go語言兩種執(zhí)行流程的方式詳解就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的參考價(jià)值,可以學(xué)以致用。如果喜歡本篇文章,不妨把它分享出去讓更多的人看到。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI