日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

delve 调试带参数_带你学够浪:Go语言基础系列-环境配置和 Hello world

發(fā)布時間:2025/3/12 编程问答 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 delve 调试带参数_带你学够浪:Go语言基础系列-环境配置和 Hello world 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

前面幾周陸陸續(xù)續(xù)寫了一些后端技術的文章,包括數(shù)據(jù)庫、微服務、內(nèi)存管理等等,我比較傾向于成體系的學習,所以數(shù)據(jù)庫和微服務還有后續(xù)系列文章補充。

最近工作上比較多的 Golang 編程,現(xiàn)在很多互聯(lián)網(wǎng)公司都在轉(zhuǎn)向 Golang 開發(fā),所以打算寫一寫有關 Go 語言學習的系列文章,目標是從 Go 基礎到進階輸出一系列文章,沉淀下這些知識同時也給大家做參考,力求做到通俗易懂,即使你是 Golang 小白也能看懂,如果你是老手也能溫故知新。

本文將要和你分享 linux 下安裝 Golang 環(huán)境,并且講解如何通過配置 VSCode 遠程開發(fā)調(diào)試 Golang 程序。

下載源碼

你可以用系統(tǒng)自帶的包管理工具比如 yum 或 apt-get 來安裝Golang開發(fā)環(huán)境。不過,為了通用性,我選擇通過源碼的方式來安裝和講解,在官網(wǎng)下載源碼,下載地址 https://golang.org/dl/

手動安裝

解壓安裝

我這里下載下來的源碼包 go1.14.2.linux-amd64.tar.gz 放到遠程 Linux 服務器目錄下。執(zhí)行以下命令安裝到 /usr/local 目錄。

tar -zxvf -C /usr/local/ `go1.14.2.linux-amd64.tar.gz`

創(chuàng)建工作空間

工作空間是你Go項目的「工作目錄」,挑選一個合適目錄,執(zhí)行下面操作:

mkdir GoPath mkdir -p GoPath/src mkdir -p GoPath/bin mkdir -p GoPath/pkg

三個目錄含義:

src: 源碼路徑(例如:.go、.c、.h、.s 等)pkg: 編譯包時,生成的.a文件存放路徑bin: 編譯生成的可執(zhí)行文件路徑

配置環(huán)境變量

安裝過程中有這么幾個環(huán)境變量需要配置,先來了解一下:

GOROOT:Go的安裝路徑,也就是前面我們解壓到的目錄 /usr/local/go。

GOBIN:Go項目的二進制文件存放目錄。

GOPATH:Go的工作空間。前面有介紹的工作空間目錄。

在 /etc/profile 文件追加以下內(nèi)容完成設置。

export GOROOT=/usr/local/go export GOPATH=/yourpath/GoPath # 設置你自己的GoPath路徑 export GOBIN=$GOPATH/bin export PATH=$PATH:$GOROOT/bin # 加入到PATH環(huán)境變量 export PATH=$PATH:$GOPATH/bin# source /etc/profile #立即生效

驗證安裝

# go version #檢查版本 # go version go1.14.2 linux/amd64 # 輸出版本號

如果看到版本信息就代表安裝成功了!

遠程開發(fā)

上面我們在 Linux 環(huán)境下安裝好了 Golang 開發(fā)環(huán)境,但我不想每次打開終端登錄服務器編寫調(diào)試程序,怎么才能在本地PC開發(fā)調(diào)試Golang程序呢?

看過我上一篇Vscode遠程開發(fā)的小伙伴應該能想到方法,我們就要用Vscode搭建Golang遠程開發(fā)環(huán)境。具體的遠程開發(fā)配置可以查看我的另一篇文章。

Golang開發(fā)插件

首先安裝官方推薦的 Go 開發(fā)插件,如下,點他安裝。

接著還會出現(xiàn)如下的提示,是因為缺少其他 Go 開發(fā)相關插件,點 install all 全都裝上就行。

Hello World

編程界有個慣例,什么語言開始學習都是從 Hello World 開始。現(xiàn)在,我們就用 Golang 編寫第一個 HelloWorld 程序吧。

上代碼:

package main // 所有Go程序從main包開始運行import "fmt" // 導入fmt包func main() {fmt.Print("hello world", " i am ready to go :)n")fmt.Println("hello world", "i am ready to go :)") }

格式化 包

fmt 實現(xiàn)了類似 C++/C 語言的格式IO庫功能。

Print 和 Println 都可用于打印輸出,但是功能略有不同。可以看到我在Print 函數(shù)中,對后一個字符串加了空格和換行符,這樣兩個打印出來的結(jié)果是相同的。

Print

func Print(a ...interface{}) (n int, err error)

Print采用默認格式將其參數(shù)格式化并寫入標準輸出。如果兩個相鄰的參數(shù)都不是字符串,會在它們的輸出之間添加空格。返回寫入的字節(jié)數(shù)和遇到的任何錯誤。

Println

func Println(a ...interface{}) (n int, err error)

Println采用默認格式將其參數(shù)格式化并寫入標準輸出。總是會在相鄰參數(shù)的輸出之間添加空格并在輸出結(jié)束后添加換行符。返回寫入的字節(jié)數(shù)和遇到的任何錯誤。

調(diào)試

終端調(diào)試

在終端命令行源碼所在目錄輸入go run 運行程序。

# go run HelloWorld.go //輸出 hello world i am ready to go :) hello world i am ready to go :)

也可以先編譯go build 得到可執(zhí)行文件后再運行。

# go build HelloWorld.go # ls HelloWorld HelloWorld.go # ./HelloWorld hello world i am ready to go :) hello world i am ready to go :)

Vscode調(diào)試

按F5啟動調(diào)試,編輯與調(diào)試控制臺輸出如下:

命令行參數(shù)獲取

命令行參數(shù)可以通過os 包的 Args 函數(shù)獲取,代碼如下:

package mainimport ("fmt""os""strconv" )func main() {// 命令行參數(shù)獲取,os.Args第一個參數(shù)是程序自身fmt.Println(os.Args)for idx, args := range os.Args {fmt.Println("參數(shù)"+strconv.Itoa(idx)+":", args)} }

終端設置

以下是帶參數(shù)argv1 argv2 運行golang程序和輸出。

# go run basic.go argv1 argv2 # 輸出 [/tmp/go-build441686724/b001/exe/basic argv1 argv2] 參數(shù)0: /tmp/go-build441686724/b001/exe/basic 參數(shù)1: argv1 參數(shù)2: argv2

VSCode設置

launch.json文件的 args 屬性配置可以設置程序啟動調(diào)試的參數(shù)。

設置之后,按F5 啟動調(diào)試,就會在調(diào)試控制臺輸出配置的參數(shù)。

環(huán)境變量獲取

命令行參數(shù)可以通過os 包的 Getenv 函數(shù)獲取,代碼如下:

package mainimport ("fmt""os" )func main() {// 獲取環(huán)境變量fmt.Println(os.Getenv("type"), os.Getenv("name"), os.Getenv("GOROOT")) }

VSCode設置環(huán)境變量

launch.json 文件的 args 屬性配置可以設置 VSCode 調(diào)試的 Golang 程序環(huán)境變量。

設置的格式是:name:vaule 形式,注意都是字符串。

終端設置環(huán)境變量

終端的環(huán)境變量設置就是可以用 Linux 的 export 命令設置,之后就可以用 os.Getenv 函數(shù)讀取。

比如我們最初設置 GOROOT 環(huán)境變量的命令

export GOROOT=/usr/local/go

就可以用 os.Getenv("GOROOT") 讀取,比較簡單,這里就不多說了。

總結(jié)

現(xiàn)在,你有了一個可以遠程開發(fā)調(diào)試 Golang 的環(huán)境,趕緊去寫個 hello world 體驗一下吧!今天的分享就到這,下一篇文章講解基礎語法。

老規(guī)矩,感謝各位的閱讀,文章的目的是分享對知識的理解,技術類文章我都會反復求證以求最大程度保證準確性,若文中出現(xiàn)明顯紕漏也歡迎指出,我們一起在探討中學習。今天的技術分享就到這里,我們下期再見。

原創(chuàng)不易,看到這里,如果在我這有一點點收獲,就動動手指「轉(zhuǎn)發(fā)」和「在看」是對我持續(xù)創(chuàng)作的最大支持。

總結(jié)

以上是生活随笔為你收集整理的delve 调试带参数_带你学够浪:Go语言基础系列-环境配置和 Hello world的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。