• 安装包下载

    • 下载链接: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.golang的环境搭建及入门的更多相关文章

  1. Android菜鸟的成长笔记(1)——Android开发环境搭建从入门到精通

    原文:Android菜鸟的成长笔记(1)--Android开发环境搭建从入门到精通 今天在博客中看到好多Android的初学者对Android的开发环境的搭建不熟悉而导致不能进行学习,所以我决定自己写 ...

  2. Spark+ECLIPSE+JAVA+MAVEN windows开发环境搭建及入门实例【附详细代码】

    http://blog.csdn.net/xiefu5hh/article/details/51707529 Spark+ECLIPSE+JAVA+MAVEN windows开发环境搭建及入门实例[附 ...

  3. (十八)整合Nacos组件,环境搭建和入门案例详解

    整合Nacos组件,环境搭建和入门案例详解 1.Nacos基础简介 1.1 关键特性 1.2 专业术语解释 1.3 Nacos生态圈 2.SpringBoot整合Nacos 2.1 新建配置 2.2 ...

  4. 基于Qt Designer和PyQt5的桌面软件开发--环境搭建和入门例子

      本文介绍了如何使用技术栈PyCharm+Qt Designer+PyQt5来开发桌面软件,从环境搭建.例子演示到对容易混淆概念的解释.文中用到的全部软件+代码下载链接为:https://url39 ...

  5. Mybatis学习笔记之一(环境搭建和入门案例介绍)

    一.Mybatis概述 1.1 Mybatis介绍 MyBatis 本是apache的一个开源项目iBatis, 2010年这个项目由apache software foundation 迁移到了go ...

  6. Eclipse Golang 开发环境搭建 GoClipse 插件

    Windows平台 下载完成后,直接双击安装即可 默认情况下,.msi文件会安装在 C:\Go 目录下.可以将 C:\Go\bin 目录添加到环境变量 PATH 中,方便调用命令. Go 里面有两个非 ...

  7. Golang开发环境搭建-Vim篇

    一.一个干净的环境 找个干净的基础环境,方便确认每个搭建步骤后的效果: Ubuntu 14.04 x86_64 vim version 7.4.52 go version go1.4beta1 lin ...

  8. 04 Mybatis 框架的环境搭建及入门案例

    1.搭建 Mybatis 开发环境 mybatis的环境搭建 第一步:创建maven工程并导入坐标 第二步:创建实体类和dao的接口 第三步:创建Mybatis的主配置文件 SqlMapConifg. ...

  9. 0021SpringMVC环境搭建及入门程序编写

    环境搭建: 1.创建项目 创建maven项目,勾选上Create from archetype,然后选中webapp再点击下一步,如下图: 解决项目创建过慢问题: 在创建maven项目过程中加入一组键 ...

随机推荐

  1. 缓存算法(FIFO 、LRU、LFU三种算法的区别)

    FIFO算法 FIFO 算法是一种比较容易实现的算法.它的思想是先进先出(FIFO,队列),这是最简单.最公平的一种思想,即如果一个数据是最先进入的,那么可以认为在将来它被访问的可能性很小.空间满的时 ...

  2. Code Pages

    https://docs.microsoft.com/en-us/windows/desktop/intl/code-pages Most applications written today han ...

  3. BZOJ 1269 文本编辑器editor(伸展树)

    题意 https://www.lydsy.com/JudgeOnline/problem.php?id=1269 思路 伸展树(\(\text{splay}\))功能比较齐全的模板,能较好的体现 \( ...

  4. 在 jupyter 中添加菜单和自动完成功能

    在 jupyter 中添加菜单和自动完成功能 参考文档http://www.360doc.com/content/17/1103/14/1489589_700569828.shtmlhttp://to ...

  5. Lintcode97-Maximum Depth of Binary Tree-Easy

    97. Maximum Depth of Binary Tree Given a binary tree, find its maximum depth. The maximum depth is t ...

  6. Codeforces Round #495 (Div. 2) D. Sonya and Matrix

    http://codeforces.com/contest/1004/problem/D 题意: 在n×m的方格中,选定一个点(x,y)作为中心点,该点的值为0,其余点的值为点到中心点的曼哈顿距离. ...

  7. gitlab备份还原

    断电后gitlab报500错误 查看日志 tail -f /var/log/gitlab/gitlab-rails/production.log ActionView::Template::Error ...

  8. Rancher 容器管理平台-免费视频培训-链接及内容-第三季

    Rancher 容器管理平台-免费视频培训-链接及内容 第三季 第5期-2018年05月10日-持续集成的容器化实践回放网址:http://www.itdks.com/liveevent/detail ...

  9. leecode第一百六十九题(求众数)

    class Solution { public: void quick_sort(vector<int>& nums,int res,int res_end) { )//错过,不能 ...

  10. gevent-协程用法

    文章介绍了一种采用循环的方式生产协程列表,并可以向协程函数传递参数... # 协程引用import gevent from gevent import monkey, pool monkey.patc ...