• 【go学习笔记】一、go语言hello world程序开发【连载】


    开发环境构建

    GOPATH

    1. 在1.8版本前必须设置这个环境变量
    2. 1.8以及更高版本如果没有设置,则使用默认值
      在Mac上GOPATH可以通过修改 ~/.bash_profile来设置

    程序基本结构

    package main //包,表明代码所在的模块(包)和java以及dotnet 命名空间是相似的
    
    import "fmt" //依赖关系引用 和java以及dotnet的using、import相似
    
    //方法函数
    func main(){
      fmt.Println("Hello World!")
    }
    

    应用程序入口

    1. 必须是main包:package main
    2. 必须是main方法: func main(){}
    3. 文件名称不强制是main.go,也可以是index.go

    退出返回值

    • Go中main函数不支持任何返回值
    • 通过os.Exit来返回状态 需要import “os”
    package hello
    
    import (
        "fmt"
        "os"
    )
    
    func main() {
        fmt.Println("Hello World")
    
        os.Exit(-1)
    }
    

    执行结果:

    go run hello_world.go                
    Hello World
    exit status 255
    

    获取命令行参数

    • main函数不支持传入参数
    • 在程序中直接通过 os.Args 获取命令行参数

    示例代码

    package main
    
    import (
        "fmt"
        "os"
    )
    
    func main() {
        fmt.Println(os.Args)
        fmt.Println("Hello World")
    }
    

    输出结果

    $ go run hello_world.go zhang
    [/var/folders/zg/0_xcqssx6pj7g8p96ppl66ww0000gn/T/go-build244907203/b001/exe/hello_world zhang]
    Hello World
    

    改进后的代码:

    package main
    
    import (
        "fmt"
        "os"
    )
    
    func main() {
        if len(os.Args)>1 {
            fmt.Println("Hello World",os.Args[1])
        }else {
            fmt.Println("Hello World")
        }
    }
    

    输出结果

    $ go run hello_world.go zhang
    Hello World zhang
    
    示例代码请访问: https://github.com/wenjianzhang/golearning
  • 相关阅读:
    ThinkJS框架入门详细教程(一)开发环境
    为什么要使用云盘?
    博客使用BOS上传图片
    网站第三方评论对比
    Angular定义服务-Learn By Doing
    原生Ajax总结
    JavaScript事件概览
    Angular学习-指令入门
    Angular中ngCookies模块介绍
    Angular Service入门
  • 原文地址:https://www.cnblogs.com/zhangwenjian/p/11866313.html
Copyright © 2020-2023  润新知