Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/go/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在go编译器中使用run命令时,可执行文件会发生什么情况?_Go_Compilation - Fatal编程技术网

在go编译器中使用run命令时,可执行文件会发生什么情况?

在go编译器中使用run命令时,可执行文件会发生什么情况?,go,compilation,Go,Compilation,使用go build myprogam.go生成一个可执行文件,这是我在使用编译器时所熟悉的 但是,使用go run myprogram.go不会创建任何可执行文件,仍然会运行程序 这到底是如何工作的,是创建并删除可执行文件,还是像解释器一样运行代码?创建了一个临时可执行文件。 围棋测试也是如此 关于进行测试的文档 软件包构建在临时目录中,因此不会干扰非测试安装。 您还可以运行fmt.Println(os.Args[0])查看正在创建的可执行文件。谢谢您的回答。何时删除临时可执行文件?就在命令

使用
go build myprogam.go
生成一个可执行文件,这是我在使用编译器时所熟悉的

但是,使用
go run myprogram.go
不会创建任何可执行文件,仍然会运行程序


这到底是如何工作的,是创建并删除可执行文件,还是像解释器一样运行代码?

创建了一个临时可执行文件。 围棋测试也是如此

关于进行测试的文档

软件包构建在临时目录中,因此不会干扰非测试安装。


您还可以运行
fmt.Println(os.Args[0])
查看正在创建的可执行文件。

谢谢您的回答。何时删除临时可执行文件?就在命令下达后还是其他时间?我不确定。但我猜它会在执行结束后被删除。