美文网首页
第二章 简单动态字符串SDS

第二章 简单动态字符串SDS

作者: 今天不想掉头发 | 来源:发表于2019-07-25 12:18 被阅读0次

SDS相对C语言的字符串的优点:

  1. 可以直接获取字符串长度O(1)
  2. 拼接时自动扩容,保证安全性

使用free字段实现空间预分配优化字符串增长操作,防止频繁地调用malloc分配和释放内存空间
使用free字段实现惰性空间释放优化字符串缩短操作,记录需要回收的字符串长度,待之后使用

  1. 更加安全,使用len来判断字符的末尾而非'\0',因此SDS的字符串中可以保存空字符
  2. 兼容C的一些API,分配字符的时候依然会在字符串的末尾加入'\0'
image.png image.png

相关文章

网友评论

      本文标题:第二章 简单动态字符串SDS

      本文链接:https://www.haomeiwen.com/subject/exicrctx.html