隐藏页面特效

go语言变量的零值和nil

Go语言中无论是全局变量还是局部变量,只要定义了一个变量都有默认的0 int/int8/int16/int32/int64/uint/uint8/uint16/uint32/uint64/byte/rune/uintptr的默认值是0 float32/float64的默认值是0.0 bool的默认值是false string的默认值是"" pointer/function/interface/slice/channel/map/error的默认值是nil 其它复合类型array/struct默认值是内部数据类型的默认值 package main import "fmt" func main() { var intV int // 整型变量 var floatV float32 // 实型变量 var boolV bool // 布尔型变量 var stringV string // 字符串变量 var pointerV *int // 指针变量 var funcV func(int, int)int // function变量 var interfaceV interface{} // 接口变量 var sliceV []int // 切片变量 var channelV chan int // channel变量 var mapV map[string]string // map变量 var errorV error // error变量 fmt.Println("int = ", intV) // 0 fmt.Println("float = ", floatV) // 0 fmt.Println("bool = ", boolV) // false fmt.Println("string = ", stringV) // "" fmt.Println("pointer = ", pointerV) // nil fmt.Println("func = ", funcV) // nil fmt.Println("interface = ", interfaceV) // nil fmt.Println("slice = ", sliceV) // [] fmt.Println("slice = ", sliceV == nil) // true fmt.Println("channel = ", channelV) // nil fmt.Println("map = ", mapV) // map[] fmt.Println("map = ", mapV == nil) // true fmt.Println("error = ", errorV) // nil var arraryV [3]int // 数组变量 type Person struct{ name string age int } var structV Person // 结构体变量 fmt.Println("arrary = ", arraryV) // [0, 0, 0] fmt.Println("struct = ", structV) // {"" 0} }

__EOF__

本文作者404 Not Found
本文链接https://www.cnblogs.com/weiweivip666/p/15748047.html
关于博主:可能又在睡觉
版权声明:转载请注明出处
声援博主:如果看到我睡觉请喊我去学习
posted @   我在路上回头看  阅读(251)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· winform 绘制太阳,地球,月球 运作规律
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
点击右上角即可分享
微信分享提示