Redis源码学习之[动态字符串]
介绍由于在标准C中没有字符串这一类型,因而Redis实现了一个自己的字符串sds。源文件sds.h sds.c分析数据结构[cpp]// sds 类型typedef char *sds;// sdshdr 结构struct sdshdr {// buf 已占用长度int len;// buf 剩余可用长度int free;// 实际保存字符串数据的地方char buf[];};特点主要支持如下操作new,dump,cat,cpy,printf,trim,range,tolower/toupper,cmp,split,fromlonglong,以及和hex之间的转换等。技巧:sds就像是管理内存一样不过这里是管理的字符,需要保存其长度和空闲空间使用预分配空间来扩展sds支持自动扩展
补充:软件开发 , C++ ,