record 1

guaju · · 695 次点击 · · 开始浏览    
这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。

一、基础环境搭建

官方(科学上网),到这来

https://golang.org/dl/

不能科学上网,来这

https://studygolang.com/dl

下载安装最新版本的 go

目前不能用命令行去安装 go,老老实实去下载吧,大概 120m 左右

安装完毕之后,将 terminal 重启,然后执行
go version
回车
可以查看是否安装成功,若安装成功则返回 当前安装的版本号

二、开发工具

下载安装 Atom
安装完Atom 软件之后,再到 Atom 中安装
go-plus
插件,这里需要注意一下,是 go-plus而非git-plus 我就在这里给正懵逼了。

三、开始编写吧

创建自己的 go 项目的路径

创建 go 文件,注意文件名称后缀必须是.go

示例代码:

package main
import "fmt"
func main(){
fmt.Println("hello,world")    
}

是不是很简单,需要注意的是,虽然我们现在编写的是很简单的程序,但是程序之所以能够运行,是因为程序有入口,没有入口的程序肯定不能运行起来的,而这个入口是哪个呢?

就是
package main
main 方法
除此之外,别的都不重要,也就是说,这个.go文件的上层文件夹的名称可以不是main
而且这个.go程序的名字也不需要是main

只需要保证 文件内的 package 和 方法名是 main , go 就让你跑通

四、写完跑一下

编译:

go build .go文件

编译后会让 go 生成 一份可执行文件,可以直接跑这个可执行文件

如图


go 的编译

运行 :

go run .go文件

直接跑通,直接出现运行结果


go 的运行

五、main 方法的退出返回值

首先说一点 go 的 main 方法 既不能有参数,也不能有返回值

所以 go 语言为我们提供了 os.Exit(返回值)的方法来对 main 方法做返回

还用上面的 helloworld.go 的代码示例

package main
import “fmt”
import "os"
func  main(){
    fmt.Println("hello,world")  
    //依次返回 0 1 -1 来看一下结果
    os.Exit(0)
}

我们来 go run 一下

0

1
-1

六、main 函数的 传入参数

知道了 main 函数不能有参数,那么 我们怎样去传入呢?传入后又该怎么样去取得呢?
其实还是用到了os.Args这个结构去获得

再将上方的 helloworld.go 的代码改变一下

package main
import (
  "fmt"
  "os"
)
func main(){
if len(os.Args)>1{
    fmt.Print("hello world",os.Args[1])
}
}

这样,如果我们在运行 go 程序的时候传入了参数,那么就会被打印出来,我们来看一下吧


第一次我运行的时候没有传入参数,也就只打印了helloworld

第二次运行的时候带入了“guaju” ,这时候就打印出来我传入的参数了

为什么要对 os.Args 的长度做判断呢?

其实是因为我们一旦运行 main 函数,其实就已经给 main 函数传入了参数,而这个参数就是 go 文件被编译之后的可执行文件的路径,所以这个其实是没有实际意义的,所以我们直接从第二个参数取值即可。

第一篇 go 的回顾记录就到这里吧,好久没看了,这的得重新温习一下啊,python 算是被我给遗忘了~


有疑问加站长微信联系(非本文作者)

本文来自:简书

感谢作者:guaju

查看原文:record 1

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

695 次点击  
加入收藏 微博
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传