go build 生成 .exe的可执行文件==>运行.exe执行文件
go run hello.go
编译和执行 一步到位
---
## 编译过程
>
> 编译:即将go语言转换成二进制可执行文件的过程
>
>
>
go build hello.go
>
> 1. 会默认生成一个hello.exe的可执行文件,windows环境下双击可执行。而且这个exe文件内置了go的sdk,即可以将这个.exe文件拷贝到没有go环境的机器中执行
> 2. 如果直接拷贝go源码到其他机器,则该机器需要有go的环境才能执行
> 3. exe的可执行文件不需要再执行编译过程,即exe的可执行文件启动速度较快
>
>
>
如果需要指定build过程生成exe文件的名字,则可以使用-o参数来给编译过程指定生成的目标文件的名字,windows下必须为.exe后缀的文件名才行。
go build -o he.exe hello.go
上述指令会将hello.go文件编译生成he.exe文件。
如果程序有错误,编译过程中会报错,并提示是哪一行出错。
---
## go程序开发注意事项
>
> 1. go程序的后缀是.go
> 2. go程序的执行入口是main函数
> 3. go语言严格区分大小写
> 4. go方法由一条条语句构成,每个语句后不需要分号(简洁性) 在语句后加分号是没有意义的
> 5. go编译器是一行一行编译的,不能把多个语句写在同一行
> 6. go语言定义的变量或者import的包如果没有使用到,代码不能编译通过
> 7. 大括号{}是成对出现,缺一不可
> 8. 同一个文件夹下的go文件不能同时为package main的包 即不能有多个程序执行入口
>
>
>
---
## go语言的转义字符(escape char)
| 转义字符 | 功能介绍 |
| --- | --- |
| \t | 制表符,通常用来对齐 |
| \n | 换行符 |
| \\ | 第一个为转义标识 第二个"\"为显示的字符 |
| \" | 一个” |
| \r | 一个回车,从当前行的最前面开始输出 覆盖之前的内容 |
例如:
package main
import “fmt”
func main() {
fmt.Println(“F:\go_projects\demos”)
}
输出:
>
> F:\go\_projects\demos
>
>
>
package main
import “fmt”
func main() {
fmt.Println(“你好世界,我是\rLvan”)
}
>
> Lvan世界,我是
>
>
>
package main
import “fmt”
func main() {
fmt.Println(“姓名\t年龄\t学号”)
fmt.Println(“吴京\t30\t2021000”)
fmt.Println(“吴奇隆\t30\t2021001”)
fmt.Println(“Lvan\t20\t2021002”)
}
有表格对齐的功能
![在这里插入图片描述](https://img-blog.csdnimg.cn/7cc959bba76346dc8973286b8e3e492e.png)
---
## go语言的注释
>
> 注释可以提高代码的可读性,可维护性
> 注释可以体现代码的思想
> 被注释的代码不会影响代码的执行
> 块注释不可嵌套
>
>
>
行注释:
>
> //表示注释当前行后的内容
>
>
>
package main
import “fmt”
func main() { //{不能单独占一行
// 这是一个行注释
//fmt.Println(“这个不能输出的,被注释了”)
fmt.Println(“这个可以输出”)
}
可以同时选中多行 按ctrl + /进行多行一次性注释
块注释:
>
> /\* 块注释开始标记
> \*/ 块注释的结束标记
> /\* 嵌套的多行的内容\*/
>
>
>
package main
import “fmt”
func main() { //{不能单独占一行
// 这是一个行注释
//fmt.Println(“这个不能输出的,被注释了”)
fmt.Println(“这个可以输出”)
/*
多行注释
多行注释
*/
}
---
## 代码风格
>
> 1. go官方推荐使用行注释来注释整个方法和语句