Posted in

为什么len(“你好”) == 6?——Go字符串底层是UTF-8字节数组!5张内存结构图讲透string/rune/[]byte三者本质差异

第一章:为什么len(&#822 … 为什么len(“你好”) == 6?——Go字符串底层是UTF-8字节数组!5张内存结构图讲透string/rune/[]byte三者本质差异Read more

Posted in

Go字符串与字节切片期末生死线:rune vs byte、UTF-8编码边界、strings.Builder底层复用逻辑(3道真题带批注版解析)

第一章:Go字符串与字节切片期末 … Go字符串与字节切片期末生死线:rune vs byte、UTF-8编码边界、strings.Builder底层复用逻辑(3道真题带批注版解析)Read more

Posted in

Go字符串设计的“零拷贝”幻觉:string header不可变、unsafe.String()绕过检查、[]byte转string的2次内存语义陷阱

第一章:Go字符串设计的“零拷贝 … Go字符串设计的“零拷贝”幻觉:string header不可变、unsafe.String()绕过检查、[]byte转string的2次内存语义陷阱Read more

Posted in

Go中字符串参数的“双面性”:为什么len(s)为0时仍可能触发底层数组拷贝?runtime/string.go第89行注释揭示答案

第一章:Go语言如何看传递的参数 … Go中字符串参数的“双面性”:为什么len(s)为0时仍可能触发底层数组拷贝?runtime/string.go第89行注释揭示答案Read more