cstringC 语言字符串处理库
cstring 是一个简单的 string 库,它主要解决以下几个问题:
- 对于短字符串(小于32字节),进行string interning。这可以在文本处理时节省足够的内存。短字符串相当于symbol类型,对它做比较操作的代价可以减少到O(1)。
- 对于临时字符串,如果长度不大(小于128字节),应放在堆栈上,避免动态内存分配。
- 支持常量字符串,对于常量短字符串只做一次string interning操作。
- 使用引用计数管理相同的字符串,减少字符串的副本。
- 短字符串,常量字符串,以及引用次数非常多(大于64K次)的字符串可以不动态释放,简化生命期管理。
- 惰性计算,以及缓存字符串的hash值,以方便实现hashmap。
- 这个库是线程安全的。
评论
AStringC语言字符串库
AString一个轻量级的自动内存管理的C语言字符串库,可以方便的对字符串进行各种操作,而无需直接操作内存,同时,AString还提供了一个AStringList结构,与Delphi中的TString
AStringC语言字符串库
0
utf8rewind字符串处理库
utf8rewind是跨平台的开源C库,扩展默认的字符串处理函数,支持UTF-8编码文本。示例: #include "utf8rewind.h" int main(int argc, char*
utf8rewind字符串处理库
0
go.stripeGo 语言信用卡处理库
go.stripe是一个简单的Go语言信用卡处理库,使用StripeAPI。示例代码://CreateCustomerparams:=stripe.CustomerParams{Email:"geor
go.stripeGo 语言信用卡处理库
0