go(又称Golang)
应用领域:
go服务器
go分布式/云计算
区块链工程师
360开源的日志搜索系统 qihoo360/poseidon
【1】搭建Go开发环境-安装和配置SDK基本介绍;
1 SDKE全格ASoftware Devetopment雹&警寺兹莽于晶窖zA)
【2] sDK下载
1)Go语言的官网为: golang.org ,无法访问,需要.
2) SDK下裁地址;Golang中文社区: https://studygolang.com/dl (1.15.6版本)外网下载
【3】安装SDK:
清注意:安装路径不要有中文或者特殊符号如空格等
SDK安装目录建议:一般我安装在d:/golang安装时,基本上是俊瓜式安装,解压就可以使用
dos命令
清屏:cls
dir 显示详细信息
c: 切换盘符
md 创建目录
rd 删除目录
copy 1.txt a\1.txt 复制文件
https://dl.google.com/go/g01.15.6.windows-amd64.zip
环境变量——path——新增
D:\golang_sdk\go\bin
package main //声明整个文件所在的包,每个go文件必须有归属的包
import "fmt" //引入程序要用的包
func main(){
//main 程序的入口
fmt.Println("HELLO guiltyfet") //控制台打印输出一句话,双引号的内容原样输出
}
D:\goproject\src\gocode\xm1\main>go build test1.go
.\test1.go:4:2: cannot refer to unexported name fmt.println
.\test1.go:4:2: undefined: fmt.println
将小写改成大写的就可以了 “p"→”P“
D:\goproject\src\gocode\xm1\main>go build test1.go
command-line-arguments
.\test1.go:3:6: func main must have no arguments and no return values
.\test1.go:3:6: missing function body
.\test1.go:4:2: cannot refer to unexported name fmt.printIn
.\test1.go:4:13: syntax error: unexpected (, expecting comma or )
.\test1.go:6:1: syntax error: non-declaration statement outside function body
三点错误{
}
小p变大p
println Ln
[1】交量的引入:一个程序就是一个世界
不论是使用哪种高级程序语言编写程序变量都是其程序的甚本组成单位,[2】变量的介绍:
安量相当于内存中一个数据存储空间的表示
I
【3】姿量的使用步骤;
1.声明
2赋值
3.使用
go build main.go 运行时报错如下:
main.go:1:1: expected ‘package’, found ‘EOF’
解决:ctrl+s保存下就可以了
#command-line-arguments
.\main.go:4:6: missing function body
.\main.go:4:10: invalid character U+FF08 ‘(’ in identifier
.\main.go:4:13: invalid character U+FF09 ‘)’ in identifier
.\main.go:4:16: syntax error: unexpected {, expecting (
.\main.go:6:2: syntax error: unexpected var, expecting )
.\main.go:13:1: syntax error: non-declaration statement outside function body
package main
import "fmt"
func main(){
//变量的声明s
var age int
//变量的赋值
age = 18
//变量的使用
fmt.Println("age = ",age);
//声明和复制可以合成一句,
var age2 int = 19
fmt.Println("age2 = ",age2);
//var age int =20;
//fmt.Println("age = ",age);
/*变量的重复定义会报错;
//.\main.go:16:6: age redeclared in this block
//previous declaration at .\main.go:6:6
//.\main.go:17:1: invalid character U+00A0 in identifier
//.\main.go:17:4: syntax error: unexpected at end of statement
*/
//不可以在赋值的时候给与不匹配的类型
var num int =12.5
fmt.Println("num = ",num);
}
(S】八进转换为十六进制
把十进制当做一个中转站:八进制—》十进制—》十六进制
实际上根本不用自己转换这么麻烦:│
package main
import "fmt"
func main(){
//定义一个整数类型
var num1 int8 = 120
fmt.Println(num1)
var num2 uint8 = 200
fmt.Println(num2)
var num3 = 20
//printf函数的作用,格式化,把num3的类型填充到%T的位置上
fmt.Printf("num3的类型是,%t" ,num3)
}
D:\goproject\src\gocode\xm1\unit2\demo3>go run main.go
command-line-arguments
.\main.go:9:11: undefined: unit
PS:底层存储空间和操作系统无关
PS:浮点类型底层存储:符号位+指数位+尾数位,所以尾数位只是存了一个大概,很可能会出现精度的损失。
package main
import "fmt"
func main(){
//定义浮点类型的数据:
var num1 float32 = 3.14
fmt.Println(num1)
//可以表述正浮点数,也可以表示负的浮点数
var num2 float32 = -3.14
fmt.Println(num2)
//浮点数可以用十进制表示形式,也可以用科学计数法表示形式 E大写小写都可以的
var num3 float32 = 314E-2
fmt.Println(num3)
var num4 float32 = 314E-2
fmt.Println(num4)
var num5 float32 = 314E+2
fmt.Println(num5)
var num6 float32 = 314E+2
fmt.Println(num6)
var num7 float32 = 256.00000916
fmt.