知识卡片

字符串是字节序列

专业/工作 · 470.b.1.a.1.c.3.a.6.a.2.d.1.a.1.a

内容

Go 字符串是不可变 byte 序列,默认按 UTF-8 存储 Unicode 字符。发散:字符串长度、字符数和字节数不是一回事,国际化处理要格外小心。

参考来源

- 位置:《Go语言入门到实战(共3册)》第30章《Go语言学习笔记:第5章 数据》(源文件:_epub-src/text/part0064.html) - 结论依据:原文围绕“字符串是不可变字节”给出定义、机制、流程、对比或限制条件,本卡片据此提炼可迁移的语言/工程结论,并补充了边界或实践启发。 - 原始内容:未知 第5章 数据 5.1 字符串 字符串是不可变字节(byte)序列,其本身是一个复合结构。 type stringStruct struct { str unsafe.Pointer len int } 头部指针指向字节数组,但没有NULL结尾。默认以UTF-8编码存储Unicode字符,字面量……