源程序
sds sdsRemoveFreeSpace(sds s)
{
struct sdshdr *sh;
sh = (void*)(s-(sizeof(struct sdshdr)));
sh = realloc(sh,sizeof(struct sdshdr)+sh->len+1);
//这一句源函数是zrealloc()函数,我替换成realloc()函数。
//
sh->free;
return sh->buf;
}
删掉sds字符串中的空白部分,即将free的大小置为0. 将字符串中的空白部分删除这么写,是为了什么呢?真的让人难以置信。