date: 2025-12-16
go的一些东西
# Go 语言关键字与预定义名称
## 1. 关键字(25个,均为小写)
Go 语言中的关键字不能用于自定义名字,只能在特定语法结构中使用。
|-------------|-------------|-------------|-------------|-------------|
|-------------|-------------|-------------|-------------|-------------|
| break | default | func | interface | select |
| case | defer | go | map | struct |
| chan | else | goto | package | switch |
| const | fallthrough | if | range | type |
| continue | for | import | return | var |
---
## 2. 预定义名称(约30多个)
### 内建常量
- `true`
- `false`
- `iota`
- `nil`
### 内建类型
- 有符号整数:`int`、`int8`、`int16`、`int32`、`int64`
- 无符号整数:`uint`、`uint8`、`uint16`、`uint32`、`uint64`、`uintptr`
- 浮点数与复数:`float32`、`float64`、`complex64`、`complex128`
- 其他类型:`bool`、`byte`、`rune`、`string`、`error`
### 内建函数
- 内存与容器操作:`make`、`new`、`append`、`copy`、`delete`、`close`
- 长度与容量:`len`、`cap`
- 复数操作:`complex`、`real`、`imag`
- 错误处理:`panic`、`recover`
---
# Go 语言数据类型表
| 类型 | 名称 | 长度 | 零值/默认值 | 说明 |
|--------------|------------|--------|----------|----------------------------------------------------------------------|
| bool | 布尔类型 | 1 | false | 其值不为真即为假,不可以用数字代表 true 或 false |
| byte | 字节型 | 1 | 0 | uint8 别名 |
| rune | 字符类型 | 4 | 0 | 专用于存储 unicode 编码,等价于 uint32 |
| int, uint | 整型 | 4 或 8 | 0 | 32 位或 64 位 |
| int8, uint8 | 整型 | 1 | 0 | -128 ~ 127, 0 ~ 255 |
| int16, uint16| 整型 | 2 | 0 | -32768 ~ 32767, 0 ~ 65535 |
| int32, uint32| 整型 | 4 | 0 | -21 亿 ~ 21 亿, 0 ~ 42 亿 |
| int64, uint64| 整型 | 8 | 0 | |
| float32 | 浮点型 | 4 | 0.0 | 小数位精确到 7 位 |
| float64 | 浮点型 | 8 | 0.0 | 小数位精确到 15 位 |
| complex64 | 复数类型 | 8 | 0+0i | |
| complex128 | 复数类型 | 16 | 0+0i | |
| uintptr | 整型 | 4 或 8 | | 足以存储指针的 uint32 或 uint64 整数 |
| string | 字符串 | | "" | utf-8 字符串 |
Comments NOTHING