GO基础语法

变量的定义

func main() {
	var name string = "zhounan"
	name = "daawei"
	fmt.Println(name)

}

变量的初始化

func main() {
	var (
		name    string
		age     int
		address string
	)
	fmt.Println(name, age, address)

}

打印变量的类型

func main() {
	sex := "nan"
	var (
		name    = "zhounan"
		age     = 18
		address = "泰州"
	)
	fmt.Println(name, age, address, sex)
	fmt.Printf("%T,%T,%T,%T", name, age, address, sex)

}

打印对象的内存地址

func main() {
	var num int
	num = 100
	awei := 100
	fmt.Printf("num:%d,内存地址:%p", num, &num)
	fmt.Printf("num:%d,内存地址:%p", awei, &awei)
	awei = 200
	fmt.Printf("num:%d,内存地址:%p", awei, &awei)
}

变量的交换

func main() {
	var a int = 100
	var b int = 200
	b, a = a, b
	fmt.Println(a, b)

}

匿名变量


func text() (int, int) {
	return 100, 200
}

func main() {
	//对象:User 将来接收这个对象里的内容时,不一定全都要接收这样就可以用到废弃符号
	//_ 这个就是匿名变量
	a, _ := text()
	fmt.Println(a)
}

变量的作用域

var name string = "zhounan"

func main() {
	age := 18
	name := "awei"
	fmt.Println(name, age)
	name = a()
	fmt.Println(name)
}
func a() string {
	return name
}

常量

func main() {
	//常量
	const URL string = "www.baidu.com"
	const URL2 = "www.baidu.com"
	const a, b, c = 3.14, "zhounan", false
	fmt.Println(URL)
	fmt.Println(URL2)
	fmt.Println(a, b, c)

}

常量iota

func main() {
	const (
		a = iota   //0
		b = iota   //1
		c = iota   //2
		d = "haha" //iota=3
		e          //4
		f = 100    //5
		g          //6
		h = iota   //7
		i          //8
	)
	const (
		j = iota //0
		k        //1
	)
	fmt.Println(a, b, c, d, e, f, g, h, i, j, k)

}

布尔类型

func main() {
	//var 变量名 数据类型
	//bool :true false
	var isFlag bool = true

	fmt.Println(isFlag)
	//%T类型  %t值
	fmt.Printf("%T,%t\n", isFlag, isFlag)
}

数字类型

func main() {
	//定义无符号整数用uint
	var a uint8 = 12
	fmt.Printf("%T,%d\n", a, a)

	//定义整形
	//byte uint8
	//rune uint32
	//int uint64
	var age int = 18
	fmt.Printf("%T,%d\n", age, age)
	//定义浮点
	//默认6位小数打印
	//.xf 5舍6入
	//使用float64位防止数据丢失
	var money float64 = 3.14
	fmt.Printf("%T,%f\n", money, money)
	var num2 float64 = -123.0000901
	var num1 float32 = -123.0000901
	num3 := float64(num1)
	num4 := float32(num2)
	fmt.Println("num1=", num1, "num2=", num2, "num3=", num3, "num4=", num4)

}

字符字符串

func main() {
	var str string
	str = "hello,zhounan"
	fmt.Printf("%T,%s\n", str, str)
	//单引号 字符,整型-ASCII字符码
	//所有中国字的编码表:GBK
	//全世界的编码表:Unicode编码表
	v1 := 'A'
	v2 := "A"
	fmt.Printf("%T,%d\n", v1, v1)
	fmt.Printf("%T,%s", v2, v2)

}

数据类型的转换

//类型转换
//转换后的变量 :=需要转换的类型(变量)
//整形是不能转换为bool类型的
func main() {
	a := 3
	b := 3.0
	c := float64(a)
	d := int(b)
	fmt.Printf("%T,%d\n", a, a)
	fmt.Printf("%T,%f\n", b, b)
	fmt.Printf("%T,%f\n", c, c)
	fmt.Printf("%T,%d\n", d, d)

}

算术运算符

func main() {
	var a int = 10
	b := 3
	fmt.Println(a + b)
	fmt.Println(a - b)
	fmt.Println(a * b)
	fmt.Println(a % b)
	a++
	fmt.Println(a)
	a--
	fmt.Println(a)
	fmt.Printf("%d", a)
}

逻辑运算符

func main() {
	var a uint = 60
	var b uint = 13
	var c uint = 0
	c = a & b
	fmt.Printf("%d\n", c)
	fmt.Printf("%d,%b", c, c)
}

在这里插入图片描述

赋值运算符

func main() {
	var a int = 4
	var b int32
	var c float32
	var ptr *int
	fmt.Printf("第一行 -a 变量的类型是 = %T\n", a)
	fmt.Printf("第二行 -b 变量的类型是 = %T\n", b)
	fmt.Printf("第三行 -c 变量的类型是 = %T\n", c)
	ptr = &a
	fmt.Printf("a的值为 %d\n", a)
	fmt.Printf("ptr的值为 %p\n", ptr)
	fmt.Printf("*ptr的值为 %d\n", *ptr)
}

键盘输入

func main() {
	var x int
	var y float64
	fmt.Printf("请输入两个数")
	//变量取地址  &变量
	//指针,地址来修改
	//Scanln阻塞等待键盘输入
	fmt.Scanln(&x, &y)
	fmt.Println(x, y)

}
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值