我想明白爲什麼這個代碼不打印「值」golang os.Setenv,os.Getenv
package main
import (
"fmt"
"os"
)
func main() {
os.Setenv("key","value")
fmt.Printf("value is:%s", os.Getenv("key"))
}
語境:在單元測試設置環境變量。
我想明白爲什麼這個代碼不打印「值」golang os.Setenv,os.Getenv
package main
import (
"fmt"
"os"
)
func main() {
os.Setenv("key","value")
fmt.Printf("value is:%s", os.Getenv("key"))
}
語境:在單元測試設置環境變量。
根據this sample它應該工作。
我也在我的機器上試過你的代碼,它完美的工作(在macOS上運行1.8)。如果問題出現在其他地方,例如你運行的是舊版本的源代碼,而新版本不能編譯?
嗯,現在它的工作..也許有一些與我的單元測試有關?如果我無法重現問題,我會刪除該問題。 –
不幸的是我不能刪除這個問題 - 請忽略。謝謝。 –
['os.Setenv()'](https://golang.org/pkg/os/#Setenv)返回錯誤。永遠不要忽略錯誤,檢查它(你至少可以打印它)。 – icza
go1.7.6在Centos上,此代碼工作正常,並打印出「價值」 – Vorsprung
好吧,對於困擾所有人的抱歉 - 問題無法複製,不幸的是我無法刪除問題。它將不得不留在這裏,並繼續無關緊要。 –