怎么样在Go语言的Windows下配置简单程序结构?
本地环境设置
在这里我们介绍设置Go编程语言环境,需要在你的计算机上的准备以下两个软件,(A)文本编辑器和(B)Go编译器。
文本编辑器
这将用来键入程序。一些编辑器的例子包括Windows记事本,OS编辑命令,简,Brief, Epsilon, EMACS和VIM或vi。
文本编辑器名称和版本在不同的操作系统可能不太一样。例如,记事本将用于Windows;VIM或vi可以在Windows以及Linux或UNIX上使用。
编辑器创建的文件称为源文件和包含程序源代码。对于围棋程序的源文件通常命名扩展为 ".go".
在开始编程之前,请确保您有到位一个文本编辑器,并有足够的经验来写计算机程序,将其保存在一个文件,编译并最终执行。
Go编译器
写在源文件的源代码是程序的人类可读的源代码。它需要被“编译”,转成机器语言,使CPU可以真正执行程序按给定的指令。
Go编程语言编译器将用于编译源代码到最终的可执行程序。这里我们假设你有一个关于编程语言编译器的基本知识。
Go发行版以二进制安装在FreeBSD(8及以上),在Linux,Mac OS X(Snow Leopard及以上)和Windows 32位(386)和64位(AMD64)的x86处理器架构操作系统。
以下部分将指导您如何安装Go在各种操作系统上的二进制分发版本。
下载Go存档
下载最新的版本的Go安装归档文件: Go下载。 在写这篇教程的时候,下载的是 go1.4.windows-amd64.msi 然后拷贝到 C:\>go 目录
OS归档名称
安装在UNIX / Linux/ Mac OS X和FreeBSD
解压下载归档到/usr/local,即创建一个Go树在 /usr/local/go。例如:
tar -C /usr/local -xzf go1.4.linux-amd64.tar.gz
在Windows上安装
使用MSI文件,然后按照提示安装围棋工具。默认情况下,安装程序使用转到分布在c:\Go。安装程序应设置c:\Go\bin目录到Windows PATH环境变量。重新启动任何打开命令提示符,以使更改生效。
验证安装
创建一个名为test.go的go文件 C:\>Go_WorkSpace
File: test.go
package main
import "fmt"
func main() {
fmt.Println("Hello, World!")
}
现在运行test.go看到结果如下:
C:\Go_WorkSpace>go run test.go
验证输出
Hello, World!
在我们学习Go编程语言的基本构建模块,让我们看看一个最低限度的Go程序结构,这样我们就可以把它作为即将到来的章节的参考。
Go Hello World 示例
Go程序主要由以下几部分组成:
- 包声明
- 导入包
- 函数
- 变量
- 语句和表达式
- 注释
让我们来看看,将打印字的简单 "Hello World" 的代码:
package main
import "fmt"
func main() {
/* This is my first sample program. */
fmt.Println("Hello, World!")
}
让我们来看看上面的程序的各个部分:
- 程序包体的第一行定义了这个程序包的名称。这是一个必须声明为Go程序运行在什么包。main包是起始点来运行程序。每个包都有一个与之关联的路径和名称。
- 下一行import "fmt" 是告诉编译器去包含文件在包fmt的预处理命令。
- 下一行 func main()主要功能是为程序执行的开始。
- 下一行/*...*/会被编译器被忽略,它已被加入到程序添加注释。因此,这样的行称为程序中的注释。注释也使用//类似于Java或C++注释。
- 下一行 fmt.Println(...)是提供另一种功能,使消息“Hello, World!”要显示在屏幕上。这里fmt包已导出, println方法用来在屏幕上显示消息。
注意println方法。在Go语言中,一个名字如果它用大写字母开头为导出。导出是指一个函数或变量/常访问到相应的包导入。
执行Go程序:
让我们看一下如何保存的源代码文件,以及如何编译并运行它。以下是简单的步骤:
打开文本编辑器,并添加上述代码
将文件另存为 hello.go
打开命令提示符并转到目录中保存文件。
键入go run hello.go并回车来运行你的代码。
如果在你的代码中没有错误,那么就可以看到“Hello World”字样在屏幕上。
$ go run hello.go
Hello, World!
确保Go编译器是在路径和目录中包含源文件hello.go,并运行它。
本文地址:http://www.45fan.com/a/question/56276.html