博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Google的Go编程语言使用初探
阅读量:4110 次
发布时间:2019-05-25

本文共 1379 字,大约阅读时间需要 4 分钟。

Go编程语言是Google中一些大牛(尤其是有着plan9前科的大牛们)如Rob Pike,Ken Thomason这两位赫赫有名的程序高手、技术作家。

很多人认为Go编程语言有点像是C语言与Python的混血,在Golang主页上也清楚写着Go的祖先有C,有Pascal/Modula(也是C++的祖先)/Oberon,还有CSP这个语言,另外很多基础代码也来自Plan 9操作系统。

我是在一个Ubuntu9.10的虚拟机上试用的Go,大家可以跟着我的脚步一探Go的究竟。

1,准备

安装Go之前需要安装mercurial,这是Go的版本控制工具,可以直接通过ubuntu的安装程序搜索添加。

然后为当前用户定义下面几个bash变量。在ubuntu下敲入cd $HOME,一般是/home/username,然后敲vim .bashrc,修改.bashrc

在这个文件中添加如下(我的cpu是intel,所以是GOARCH是386,具体可参考golang.org说明):

GOROOT="$HOME/Go"

export GOROOT

GOOS=linux

export GOOS

GOARCH=386

export GOARCH

GOBIN="$HOME/bin"

export GOBIN

在帮助里写GOBIN是可选的,但我试了,必须有。

在.bashrc最后还要加上这一行,保证能正确编译安装。

PATH=$PATH:$GOBIN

2,下载源代码编译

在你的用户目录下运行这个命令

hg clone -r release https://go.googlecode.com/hg/ $GOROOT

这样在你的用户目录下应该有个Go目录了。

确保你的ubuntu安装了gcc(可以在软件包管理中添加build-essential)

进入Go\src

然后敲./all.bash

如果前面没有问题,编译应该可以正确完成。编译后可以进入$HOME/bin查看是不是有6g 6l 8g 8l这样的可执行文件。

3,试用Go

一般x86机器是使用8开头的命令,如8g进行编译,8l进行链接,6开头的是给AMD cpu使用,如果编译安装没错,那么$HOME/username/bin这个目录应该已经在PATH中(可以通过echo $PATH确认)。

这时候应该hello world了,编辑一个hello.go如下:

package main 

import "fmt"

func main() {  

    fmt.Printf("Hello, world; or Καλημέρα κόσμε; or こんにちは 世界\n"); 
}

运行8g hello.go编译,正常情况下什么都不提示就执行完了,但是ls可以发现多了个hello.8文件

运行8l hello.8链接,会产生一个8.out.

运行./8.out应该打出如下消息:

然后可以进入Go的目录中(因为我设置的有问题,下载Go的目录名是hg,但是不影响什么),有个test目录,进去test目录,运行./run命令。

也可以单独编译某个代码运行,如果正确的话,不会有任何提示信息输出。

OK,基本上Go编程语言的大致试用情况就是这样,真正要学Go编程语言的朋友,还是需要花时间来读文档,写写代码不断练习的。

转载地址:http://rqasi.baihongyu.com/

你可能感兴趣的文章
bat批处理之启动多个PC端微信
查看>>
bat批处理之统计脚本执行时间
查看>>
python之PyQt5安装timeout解决
查看>>
bat批处理之windows自动启动
查看>>
Maven之编码警告解决
查看>>
使用jsoup或者httpclient解析https协议通用方法
查看>>
linux之jdk安装
查看>>
Solr之Solrj封装
查看>>
Solr之IKAnalyzer集成
查看>>
sed之递归替换操作
查看>>
Mysql之修改表的编码字符集
查看>>
Mysql之Incorrect string value: '\xF0\x9F\x98\x89 \xE6...'
查看>>
linux之shell遍历目录下所有文件
查看>>
freemarker模板中long类型的逗号问题
查看>>
class.getResources("/")报空指针
查看>>
linux系统下查看nginx配置文件路径
查看>>
mysql查询某表索引
查看>>
shell读取文件内容并进行变量赋值
查看>>
shell之命令行参数传递
查看>>
Java标准库提取URL的域名
查看>>