1
2
3
4
5
| var test int // 通过var 变量名 变量类型 来声明
// 通过 := 缩写来定义变量,编译器会自动判断类型
s := "test" //声明string类型变量
i :=10 //声明int类型变量
f :=9.9 //声明float类型变量
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
| package main
import (
"fmt"
"strconv"
)
func main() {
//强制转换
var intt int
fmt.Printf("%T\n", intt) //int
fmt.Printf("%T\n", string(intt)) //string
fmt.Printf("%T\n", float64(intt)) //float64
//字符串转int
str := "33"
fmt.Printf("%T\n", str) //string
str_int, _ := strconv.Atoi(str)
fmt.Printf("%T\n", str_int) //int
// 字符串转float
f:="33.3"
str_float64,_ := strconv.ParseFloat(f,64)
fmt.Printf("%T\n",str_float64) //float64
// 字符串转bool
b :="true"
str_bool,_ :=strconv.ParseBool(b)
fmt.Printf("%T\n",str_bool) //bool
}
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
| package main
import "fmt"
func main() {
//类型定义
type intt int
type intAlias = int
var i intt
var ii intAlias
fmt.Printf("%T\n",i)
//输出:main.intt
fmt.Printf("%T",ii)
//输出int
}
|
1
2
3
4
5
6
7
8
9
| package main
import "fmt"
func main() {
t :=12312312
//& 代表 取出变量中的地址,即取地址
fmt.Printf("%p",&t)
}
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
| package main
import "fmt"
func main() {
intt := 123
inttPtr := &intt //创建整数型指针
f :=33.3
fPtr := &f //创建浮点型指针
str :="xxx"
strPtr := &str //创建字符串型指针
fmt.Printf("%T %T\n",intt,inttPtr)
fmt.Printf("%T %T\n",f,fPtr)
fmt.Printf("%T %T\n",str,strPtr)
/*
输出:
int *int
float64 *float64
string *string
*/
}
|
1
2
3
4
5
6
7
8
9
| fmt.Printf("%d\n", *inttPtr)
fmt.Printf("%f\n", *fPtr)
fmt.Printf("%s\n", *strPtr)
/*
输出
123
33.300000
xxx
*/
|