GO语言学习之路2

本文介绍了Go语言中查看变量数据类型和字节大小的方法,强调在保证程序正确运行下选择合适的数据类型,特别是浮点数默认为`float64`,字符使用`byte`存储并需要注意Unicode编码。此外,探讨了Go字符串的不可变性以及如何原生输出字符串,还涉及了不同字符在内存中的存储字节数。
2021/12/26

1、如何在程序中查看某个变量的占用字节大小和数据类型
var n1 int64 = 10
fmt.Printf(" n1的类型是%T , n2占用的字节数是%d ", n1, unsafe.Sizeof(n1))


2、golang 在保证程序正确运行下,尽量使用占用空间小的数据类型

3、golang 的浮点类型默认声明为 float64 类型

4、golang 没有专门的字符类型   存字符用 byte存储
	golang 的字符串是由字节组成的

	func main() {
	var b1 byte = 'a'
	fmt.Println("b1 = ", b1)
	}	
	输出是: b1 =  97

	如果希望输出对应的字符,需要使用格式化输出
	fmt.Printf("b1 = %c", b1)

	func main() {
	var b2 byte = '北'
	fmt.Println("b2 = ", b2)
	}  //overflow 溢出
	//1、如果我们保存的字符在ASCII表的, 比如0,1,2...A-Z之类的可以直接保存到byte类型中
	//2、如果我们保存的字符对应码值大于255,这时我们可以考虑使用int类型保存
	//3、如果我们需要按照字符的方式输出,这时我们需要格式化输出.即	fmt.Printf("b1 = %c", b1)

5、在golang中英文字母 1个字节  汉字 3个字节

6、字符的本质是一个整数,直接输出是该字符对应的编码值Unicode码

7、bool类型占用存储空间是1个字节。bool只能取true和false。不能取0或者非0

8、字符串一旦赋值,字符串就不能再修改了
	/**************/
	demo golang: 	
	var addres string = "北京长城 110 hello world!"
	addres[0] = 'w'   //error
	fmt.Println("addres = ", addres)  
	/**************/
	但是C++可以!

9、如果要把字符串完全输出(按字符串原生形式输出,不会转义),用反引号 ` `

	var addres string = `北京长城 110 hello world!\n`
	fmt.Println(addres)
	输出是:"北京长城 110 hello world!\n"

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值