zoukankan      html  css  js  c++  java
  • go语言入门

    1、hello world

    //go文件的后缀是.go
    package main //表示helo.go文件所在的包是main,在go中每个文件都必须归属于一个包
    
    import "fmt" //表示引入一个包,包名是fmt,引入该包后,就可以使用 fmt 包的函数,比如:fmt.Println
    
    func main(){ //func 是一个关键字,表示一个函数。main 是函数名,是一个主函数,即我们程序的入口。
    	fmt.Println("hello,world") //表示调用 fmt 包的函数 Println 输出 “hello,world”
    }
    

    go build命令对go文件进行编译,生成可执行文件

    go build -o 命令对go文件进行编译,生成自定义文件名字的可执行文件

    go run命令直接运行go文件程序

    2、golang 执行流程分析:

    (1)、如果是对源码编译后,再执行,go的执行流程如下图:

    (2)、如果是对源码直接 执行go run源码,go的执行流程如下图: 

    两种执行流程的方式区别:
    (1)、如果先编译生成了可执行文件,那么可以将该可执行文件拷贝到没有go开发环境的机器上仍然可以运行
    (2) 如果是直接go run go源代码,那么如果要在另外一个机器上这么运行,也需要go开发环境,否则无法执行
    (3) 在编译时,编译器会将程序运行依赖的库文件包含在可执行文件中,所以,可执行文件变大了很多

    3、go程序开发的注意事项:

    (1)、Go 源文件以 "go" 为扩展名。
    (2)、Go应用程序的执行入口是main()函数。
    (3)、Go语言严格区分大小写。
    (4)、Go方法由一条条语句构成,每个语句后不需要分号(Go语言会在每行后自动加分号),这也体现出Golang的简洁性。
    (5)、Go编译器是一行行进行编译的,因此我们一行就写一条语句,不能把多条语句写在同一个,否则报错。
    (6)、go语言定义的变量或者import的包如果没有使用到,代码不能编译通过。
    (7)、大括号都是成对出现的,缺一不可。

    4、go语言的转义字符(escape char)

    (1) : 表示一个制表符,通常使用它可以排版。
    (2) :换行符
    (3) \ :一个
    (4) " :一个"
    (5) :回车,从当前行的最前面开始数出口,覆盖掉以前内容

    package main
    
    import "fmt" //fmt包中提供格式化,输出,输入的函数
    
    func main(){
    	fmt.Println("tom	jack")
    	fmt.Println("hello
    world")
    	fmt.Println("//Users//lina//Desktop//learn_go//goproject//src//go_code/")
    	fmt.Println("tom说"i love you"")
    	fmt.Println("天龙八部雪山飞狐
    张飞厉害") //回车 ,从当前行的最前面开始数出口,覆盖掉以前内容
    }
    

    5、小练习

    package main
    
    import "fmt"
    
    func main(){
    	fmt.Println("姓名	年龄	籍贯	住址
    john	12	河北	北京")
    }
    

    6、go语言中的注释

    注释是用于注解说明解释程序的文字,注释提高了代码的阅读性。
    在golang中注释有两种形式
    (1)、行注释
    基本语法: // 注释内容
    (2)、块注释(多行注释)
    基本语法:
    /*
    注释内容
    */
    使用细节:
    对于行注释和块注释,被注释的文字,不会被go编译器执行
    块注释里面不允许有块注释嵌套

    7、规范的代码风格

    (1)、使用一次 tab 操作,实现缩进,默认整体向右边移动,时候用 shift+tab 整体向左移
    (2)、使用 gofmt 来进行格式化
    (3)、运算符两边习惯性各加一个空格
    (4)、一行最长不超过 80 个字符,超过的请使用换行展示,尽量保持格式优雅
    go设计者思想: 一个问题尽量只有一个解决方法

  • 相关阅读:
    删除排序链表中的重复元素
    动态规划之爬楼梯问题
    外行小白的modbus惊心之旅
    SSM框架整合
    我与404的不解之缘系列(一)记录一个智障一般的错误
    day 06 作业
    day 06 文件查看查找与上传下载
    linux 防火墙查看firewall
    linux 变量详情
    day05作业练习题
  • 原文地址:https://www.cnblogs.com/xidian2014/p/10543204.html
Copyright © 2011-2022 走看看