运行go代码
go运行go代码
现在,让我们通过创建一个简单的示例,开启我们的go学习旅程,并学习如何编译和执行go程序。打开你最喜欢的文本编辑器,输入以下代码:
package main
func main() {
println("it's over 9000!")
}
将文件保存为main.go,对于简单的例子,我们不需要深入到go的工作空间中。
接下来,打开一个命令行终端,进入main.go文件所在的目录。对我来说,我是输入了cd ~/code。
最后,键入以下命令运行这段程序:
go run main.go
如果程序正常运行,你应该会看到输出it's over 9000!。
但这是如何实现编译呢?为了方便起见,go run会先编译然后再运行你的代码,它会在一个临时的目录下编译这段代码,然后执行,最后自动清除生成的临时文件。通过运行以下命令你可以看见这个临时文件的位置:
go run --work main.go
如果你只想编译代码,使用go build:
go build main.go
这会生成一个可执行文件main,你可以直接运行它。在linux/osx中,不要忘记在可执行文件前面加上点和反斜杠,所以你需要输入./main运行程序。
1.5.1 main
希望你能理解我们刚刚执行的代码,我们定义了一个函数,并调用了内置函数println输出一个字符串。难道仅因为这里只有一个选择,所以go run知道执行什么吗?不是的,在go语言中,程序的入口是main包中的main函数。
我们在后面的章节中会专门介绍包的相关内容,现在,我们暂时专注于理解go语言的基础知识,所以我们一直在main包中编写代码。
如果你愿意,你也可以改变代码并改变包的名字,并使用go run去执行,你会得到一个错误信息。然后,将包名改成main,但是函数名不叫main,再次运行代码,你会得到一个不同的错误信息。使用go build进行相同的操作,注意编译代码时,这里没有运行代码的入口点。这是很正常的,例如当你编译一个库时。
本文转自:http://codingdict.com/article/22518
运行go代码的更多相关文章
- 运行html代码
<html> <head> <meta http-equiv="Content-Type" content="text/html; char ...
- 让dede运行php代码和mysql语句
一.dede运行php代码 举例1: {dede:name runphp='yes'} $str = "hello ";@me = $str;@me .= "world& ...
- 如何将oc代码转换成运行时代码
// 运行时 其实就是oc的底层 平时写的代码 最终都是转成底层的运行时代码以下面程序为例子: 如果我们想要看我们的main.m文件底层转换成了怎样的运行时代码 ,我们可以这样做. 1.打开终端 ...
- 掌握GCD以及后台永久运行的代码 (使用GCD处理后台线程和UI线程的交互)
一个例子: 在iPhone上做一个下载网页的功能,就是:在iPhone上放一个按钮,单击按钮时,显示一个转动的圆圈,表示正在进行下载,下载完成后,将内容加载到界面上的一个文本控件上. 使用GCD前: ...
- 在线运行HTML代码器
在线运行HTML代码器(二)和前面的(一)大同小异,关键部分为JS代码,这次是把运行器所有的JS功能集中放在一起.以下为HTML代码: <!DOCTYPE html PUBLIC "- ...
- 《Secrets of the JavaScript Ninja》:JavaScript 之运行时代码
最近,在阅读 jQuery 之父 John Resig 力作:Secrets of the JavaScript Ninja(JavaScript忍者秘籍).关于第九章提及的 JavaScript 之 ...
- Sublime_text3怎么运行php代码
开发神奇sublime写代码真的好爽,之前听说是神器,但是没去用,觉得用eclipse写php代码,用dw写html够用了,用了一下sublime,哈哈,爽爆了. 除了写前端代码外,还需要写php代码 ...
- 0627 CMD运行php代码
打开cmd: 如何在这里面运行php代码 1.调整环境变量:右击电脑->属性->高级系统设置->环境变量 2.新建环境变量: 上部分的用户变量----- 变量名:PHP_HOME ...
- Java泛型解析(03):虚拟机运行泛型代码
Java泛型解析(03):虚拟机运行泛型代码 Java虚拟机是不存在泛型类型对象的,全部的对象都属于普通类,甚至在泛型实现的早起版本号中,可以将使用泛型的程序编译为在1.0虚拟机上可以执行的 ...
- 用DOS命令来运行Java代码
用DOS命令来运行Java代码.. ----------------- Demo.java public class Demo { public static void main(String[] a ...
随机推荐
- 洛谷P1122 最大子树和 (树状dp)
题目描述 小明对数学饱有兴趣,并且是个勤奋好学的学生,总是在课后留在教室向老师请教一些问题.一天他早晨骑车去上课,路上见到一个老伯正在修剪花花草草,顿时想到了一个有关修剪花卉的问题.于是当日课后,小明 ...
- 【Flutter学习】之深入浅出 Key
一,前言 在开发 Flutter 的过程中你可能会发现,一些小部件的构造函数中都有一个可选的参数——Key.在这篇文章中我们会深入浅出的介绍什么是 Key,以及应该使用 key 的具体场景. 二,什么 ...
- svn服务端安装、迁移教程、Eclipse切换svn连接库
svn服务端安装.迁移教程.Eclipse切换svn连接库 安装教程 1.下载svn服务端安装程序 2.运行程序,安装 这里端口号根据自己定义,避免与其他程序冲突 到这里就安装完成 迁移教程 这里举例 ...
- [CSP-S模拟测试60]题解
回去要补一下命运石之门了…… A.嘟嘟噜 给定报数次数的约瑟夫,递推式为$ans=(ans+m)\% i$. 考虑优化,中间很多次$+m$后是不用取模的,这种情况就可以把加法变乘法了.问题在于如何找到 ...
- Homestead中PHP扩展无phpize难以安装redis扩展的问题及解决办法
这真是一个非常深的坑.homestead中自带很多版本的php.然而扩展中缺没有phpize,这个东西是php添加扩展需要的东西本人在laravel中需要用到Redis扩展.这个和laravel的pr ...
- 有关JWT(Json Web Token)的那些事
用户认证是计算机安全领域一个永恒的热点话题,然而你会发现,开发者很少讨论有关Json Web Token的话题,其实使用Json Web Token集成到API身份验证机制中是容易,本文给大家普及基础 ...
- PHP-模拟请求和操作响应
模拟请求 fsockopen <?php // 建立连接 $link = fsockopen('localhost', '80'); define('CRLF', "\r\n" ...
- 56、salesforce学习笔记(三)
Date类型 Datetime nowDatetime = Datetime.now(); Datetime datetime1 = Datetime.newInstance(2015,3,1,13, ...
- editplus 正则表达式 分组替换
editplus :zz正则表达式替换 /开头的api+换行符 替换为 /开头的api+空格 \1后有空格 editplus :zz正则表达式替换 行首两个数字+换行符 替换为 行首两个数字+空 ...
- linux Cron 定时任务(centos 7.2 测试可用)
1.Cron(学习笔记) 计划任务,是任务在约定的时间执行已经计划好的工作. 格式如下 Seconds Minutes Hours DayofMonth Month DayofWeek Year ...