zlib.h 中的compress 和 uncompress

头文件 zlib.h

int compress (Bytef * dest , uLongf * destLen, constt Bytef * source , uLongf sourceLen)

zib的压缩函数,将source处sourceLen个字节进行压缩,放到dest指向的内存,把压缩后的长度存入destLen指向的地址中。调用前destLen表示dest缓冲区,调用后destLen表示压缩后的长度。调用前需指定destLen。

return:

  Z_OK 成功,

  Z_MEM_ERROR 内存不足

  Z_BUF_ERROR dest的缓冲区太小

int uncompress(Bytef *dest, uLongf *destLen,const Bytef *source, uLongf sourceLen)

zlib的解压缩函数,将source处sourceLen个字节解压缩,放到大小为destLend的dest缓冲区中,将最终的长度放到destLen指向的地址中。

所以调用前需赋值destLen

return:

  Z_OK 成功,

  Z_MEM_ERROR 内存不足

  Z_BUF_ERROR dest的缓冲区太小

  Z_DATA_ERROR 输入数据有误

 

posted @ 2013-03-11 16:50  lc_cnblog  阅读(3231)  评论(0编辑  收藏  举报