Go语言学习(一):hello world

      从2011年7月接触Android到如今已经两年半有多了,Java接触多了,总以为它有点繁琐。Go出现了以后,一直想抽出点时间学习,因为各类缘由如今才开始。我是一边看《Go Web编程》,一边看官网的相关文档学习的。git

      每学一门语言,程序猿们老是不厌其烦地写一遍hello world,这篇就是Go语言的hello world。github

      Go语言的环境搭建建议参考《Go Web编程》的第一章:Go 环境配置,里面写得足够详细。若是以为《Go Web编程》里面写得太繁琐,也能够看官网的Getting Startedgolang

      环境搭建好以后,就能够在GOPATH的目录下新建src、pkg、bin这三个目录了。这三个目录的用途以下:web

  1. src:存放源代码编程

  2. pkg:存放编译后生成的文件,我的理解是相似于Java中存放jar包的lib目录。windows

  3. bin:存放编译后生成的可执行文件app

      在src目录下新建helloworld目录,相似于一个project的名称吧,固然,正规点的话就在src目录下新建com.XXX目录,而后在com.XXX目录下再新建helloworld目录。函数

      在helloworld目录下新建helloworld.go文件,在文件中输入下面的代码:学习

package main

import "fmt"

func main() {
    fmt.Printf("hello, world!\n")
}

      命令行窗口进入到helloworld目录,键入命令:go run helloworld.go,就会返回结果:ui

hello, world!

      Go使用package来组织代码。代码中第一行package <pkgName>告诉咱们当前文件属于哪个包,而源码中的main则告诉咱们它是一个可独立运行的包,它编译后会产生可执行文件。除了main包以外,其余包编译后会产生*.a文件(也就是包文件)并放置在$GOPATH/pkg/$GOOS_$GOARCH目录下(个人是:D:\GO_DATA\pkg\windows_amd64)。

      此外,每个可独立运行的Go程序,一定包含一个package main,并且在这个main包中一定包含一个入口函数main,这个函数既没有参数,也买有返回值。


      我的疑问,入口函数没有参数,那要写一个带外部参数的可运行程序该怎么写?举个例子,假如go这个程序是用Go语言写的,那么go这个程序的main函数如何得到命令行中的参数从而执行不一样的操做,如上文的命令:“go run helloworld.go”。

相关文章
相关标签/搜索