Go语言变量

本文介绍了Go语言的基础概念,包括变量的命名规则与声明方式、基础数据类型、常量定义及 iota 的使用方法、类型转换规则以及自定义类型等内容。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

变量

命名规则:

可以包含字幕,数字,下划线。必须是字幕或者下划线开头(下划线不建议)。不能是关键字。首字母大写为公有变量,可以被外包应用,小写为私有变量,只可以在包内使用。

变量的声明,赋值:

1、var 变量名 类型名 = 变量值

2、自动推导类型 变量名 := 变量值

匿名变量:

Go语言函数支持多个返回值,当某个返回值不需要时,可以用匿名变量下划线_接收。

基础数据类型:

整型,浮点,布尔,字符,字符串

字面常量:

基本类型的值可以直接参与运算,这些值就是字面常量。

常量的定义:

使用const定义

iota枚举:

iota的值等于当前常量在该声明中的位置,iota后续如未赋值则自动加1,如果赋值了字面常量则后续常量也等于该字面常量,直到遇到下一个iota,此时这个iota也等于当前位置,并不会重新计算,iota值从0开始计算。

类型转换:

Go语言中不允许隐式转换(自动转换),并且转换只能发生在两种互相兼容的类型之间。

类型别名,自定义类型:

通过type可以定义别名和自定义类型。

不加等号是自定义类型,虽然他们有相同的底层结构,但是凉着其实不存在任何关系,属于完全不同的两种或类型。

加等好是给类型取别名,是完全相同的类型。

type i int
type f = float

func mian (){
    var a i =10
    var b int = 20
    //	a = b	//	这样是错的,他们是两种不同的类型不能运算,赋值等操作
    var x f = 3.14
    var y float = 10.24
    z := x + y	//	这个是对的,他们就是完全相同的类型
}

fmt包格式化输出:

官方文档有详细说明,常用的有下面几个

%v(原样输出)%T(输出类型)%t(布尔型)%b(二进制)%s(字符串)%f(浮点型)%d(整型)%c(字符型)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值