• 安装包下载

    • 下载链接:https://dl.google.com/go/go1.12.3.windows-amd64.msi
  • 环境搭建
    • 安装完成之后,找一个来存放go语言文件的文件夹,我这里选的是G:\go
    • GOROOT:Go 安装后的根目录(例如:G:\go),安装过程中会由安装程序自动写入系统环境变量中。
    • GOBIN:Go 的二进制文件存放目录(%GOROOT%\bin)
    • PATH:需要将 %GOBIN% 加在 PATH 变量的最后,方便在命令行下运行。

      

    • 在GOPATH目录下(G:\go)新建三个文件夹
      • bin    // 用来存放编译好的可执行文件
      • pkg   //包含包对象,编译好的库文件
      • src    //包含 Go 源文件
        • 一般下载的包和自定义的包的源码都放在src目录下,不同的包用不同的文件夹隔开,自己的项目可以不用放在src目录下

        • 一般包的名字都是文件夹的名字,利用goland创建包的时候,在自动把文件的package名设置为该文件所在目录的文件夹名

        • 在src外部的go文件可以通过import来导入src目录下的包文件

  


  • 第一个go程序

     package main  //package:表示这是一个go的包文件   main表示该文件可被编译成可执行文件
    
     import "fmt"   //import:导入包    fmt一个包名   导入包的字符串必须用双引号包裹
    
     func main()  {   //main函数,入口函数,在同一个文件夹下(包)有且只有做一个main包否则会报错
    fmt.Println("hello world!") //fmt包的Println方法,在控制台打印出字符串
    }
  • 编译和运行
    • go run

      • 编译并直接运行程序,它会产生一个临时文件(但不会生成 .exe 文件),直接在命令行输出程序执行结果,方便用户调试。
    • go build 
      • 用于测试编译包,主要检查是否会有编译错误,如果是一个可执行文件的源码(即是 main 包),就会直接生成一个可执行文件。

        •   Windows下默认生成和go文件名相同文件名的exe可执行文件
      • go build name.exe name.go
        •   可指定生成可执行文件的名字
    • go install:
      • go install 的作用有两步:第一步是编译导入的包文件,所有导入的包文件编译完才会编译主程序;第二步是将编译后生成的可执行文件放到 bin 目录下($GOPATH/bin),编译后的包文件放到 pkg 目录($GOPATH/pkg)。
    • go的第二个程序
       package main
      
       import "fmt"
      
       func add(a int, b int) int  {
      var result = a + b
      return result
      }
      func main() {
      var result = add(, )
      fmt.Println(result)
      }

      go对代码风格做了一致统一,大括号和小括号的位置不能更改,否则会不通过编译;go是强类型,一个变量声明时必声明其类型;每个声明的变量和函数都必须被使用上,否则编译则不会通过。

最新文章

  1. WebApi防重复提交方案
  2. 64. Minimum Path Sum
  3. 【 D3.js 高级系列 — 10.0 】 思维导图
  4. LDO稳压器工作原理
  5. SQL表名,应该用复数还是单数
  6. hmac_检验客户端是否合法
  7. sqlserver 脚本生成数据库文档
  8. Actifio如何保护和管理Oracle-带外篇
  9. ajax简单登录(踩过的坑)
  10. ElementUI在IE11下兼容性修改
  11. django(六)之ORM数据库操作
  12. c# txt代码转换成HTML格式
  13. win8 下面 listen 的队列长度貌似无效了 上c/s 代码 并附截图,有图有真相
  14. EZ 2018 03 30 NOIP2018 模拟赛(六)
  15. SSIS系列文章收藏
  16. MySQL InnoDB的一些参数说明
  17. 外部类与main方法笔记
  18. Coursera 机器学习 第6章(上) Advice for Applying Machine Learning 学习笔记
  19. jquery使滚动条滚动到最底部
  20. 二叉树遍历 Morris

热门文章

  1. Matlab Code for Visualize the Tracking Results of OTB100 dataset
  2. [译] 关于 Angular 依赖注入你需要知道的
  3. yii中的restful方式输出并调用接口和判断用户是否登录状态
  4. zzw原创_解决Could not chdir to home directory /test/bdctool: Permission denied一例
  5. vue2.0 实现富文本编辑器功能
  6. Java实现类似eval()函数或exec()函数的功能
  7. JJTree Tutorial for Advanced Java Parsing
  8. 转载:VC++6.0注释快捷键设置,略有修改
  9. idea:打包jar(原文by曲高终和寡)
  10. .net core WebApi Interlocked配合ManualResetEventSlim实现并发同步