• 安装包下载

    • 下载链接: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. A - 不要62 HDU - 2089

    #include<stdio.h> #include<string.h> #include<math.h> #include<time.h> #incl ...

  2. Angular4.x Event (DOM事件和自定义事件)

    Angular组件和DOM元素通过事件与外部进行通信,两者中的事件绑定语法是相同的-(eventName)="expression": <button (click)=&qu ...

  3. Android Studio酷炫插件(一)——自动化快速实现Parcelable接口序列化

    https://blog.csdn.net/kroclin/article/details/40902721 一.前言相信数据序列化大家都多多少少有接触到,比如自定义了一个实体类,需要在activit ...

  4. 『TensorFlow』流程控制

    『PyTorch』第六弹_最小二乘法对比PyTorch和TensorFlow TensorFlow 控制流程操作 TensorFlow 提供了几个操作和类,您可以使用它们来控制操作的执行并向图中添加条 ...

  5. 『计算机视觉』mini深度学习框架实现

    一.项目简介 手动实现mini深度学习框架,主要精力不放在运算优化上,仅体会原理. 地址见:miniDeepFrame 相关博客 『TensorFlow』卷积层.池化层详解 『科学计算』全连接层.均方 ...

  6. js获取当前时间:封装js的日期时间

    <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content ...

  7. mysql添加字段语句

    1.添加 varchar类型的字段: alter table b_warehouse_message add column entity_warehouse_no_test varchar(48) C ...

  8. FileReader字符的读出

    1.fileReader是字符的读出,只能读文件. 2.在读取文件的之前,该文件必须存在. 3.int reader();一次读取一个字符,返回的该字符的码值,如果想要返回字符,直接进行强转char ...

  9. ceph Luminous版手动安装零散记录

    1.安装必要的依赖包,关防火墙,向/etc/hosts内添加域名等 2.安装ceph 配置yum源 (如果嫌慢,可以配置cachedir=/home/yum/$basearch/$releasever ...

  10. ES6学习笔记(二)—— 通过ES6 Module看import和require区别

    前言 说到import和require,大家平时开发中一定不少见,尤其是需要前端工程化的项目现在都已经离不开node了,在node环境下这两者都是大量存在的,大体上来说他们都是为了实现JS代码的模块化 ...