2309C++测试miniz简单压缩

cpp 复制代码
#include "zip.h"
#include <压中>
双<串,整>文件及长(串&a){
    串 b=至冲(a);整 i=b.大小();
    中{b,i};
}
空 g(压缩型*a,串&b){
    打开压缩项(a,b.c串());//.1
    动[m,n]=文件及长(b);
    写压缩项(a,m.c串(),n);//.2
    关闭压缩项(a);//.3
}

空 f(){
    向量<串>们{"文档.xml","[Content_Types].xml","_rels\\.rels"};
    压缩型*a=打开压缩("a.docx",压缩默认压缩级,'w');
    对(动&p:们)g(a,p);
    关闭压缩(a);
}

空 主(){
    f();
}

当然,要先编译zip.c,可用xmake如下:

cpp 复制代码
target("zip")
    set_kind("static")
    add_files("zip.c")
    add_includedirs("e:/path/h")
    set_targetdir('.')

非常简单,就可以直接用了.

上面代码还可继续化简.

相关推荐
code monkey.几秒前
【Linux之旅】Linux 应用层自定义协议与序列化:从粘包问题到网络计算器
linux·网络·c++
草莓熊Lotso3 分钟前
【Linux网络】深入理解 HTTP 协议(二):从协议格式到手写工业级 HTTP 服务器
linux·运维·服务器·网络·c++·http
MC皮蛋侠客9 小时前
C++17 多线程系列(五):C++17 并行算法——从串行到并行的零成本迁移
c++·多线程
郭涤生12 小时前
C++ 高性能编程最佳实践清单
开发语言·c++
.千余13 小时前
【C++】C++类与对象2:C++构造函数、运算符重载与流输入输出全面解析
c语言·开发语言·前端·c++·经验分享
郭涤生13 小时前
C++ 高性能状态机
开发语言·c++
酿情师13 小时前
Microsoft Visual C++ Build Tools 2026 下载与安装指南(Windows)
c++·windows·microsoft
cany100014 小时前
C++ -- 引用悬挂
c++
.千余14 小时前
【C++】C++类与对象3:const成员函数与取地址运算符重载,权限管理的艺术
开发语言·c++
QiLinkOS15 小时前
【用呼吸重构创造价值关系——QiLink生态】
c语言·数据结构·c++·人工智能·单片机·嵌入式硬件·算法