清華尹成帶你實戰GO案例(7)Go Exit

尹成發表於2018-05-21
Go Exit
使用 os.Exit 可以給定一個狀態,然後立刻退出程式執行。
package main
import "fmt"
import "os"
func main() {
// 當使用`os.Exit`的時候defer操作不會被執行,
// 所以這裡的``fmt.Println`將不會被呼叫
defer fmt.Println("!")
// 退出程式並設定退出狀態值
os.Exit(3)
}


注意,Go和C語言不同,main函式並不返回一個整數來表示程式的退出狀態,而是將退出狀態作為
os.Exit 函式的引數。
如果你使用 go run 來執行程式,將會有如下輸出
exit status 3
如果你使用 go build 先編譯程式,然後再執行可執行檔案,程式將不會有輸出。
如果你想檢視程式的返回值,*nix系列系統下面使用如下方法:
$ ./go_exit
$ echo $?
3

相關文章