百科.dev
全部条目在线工具AI 编程趋势榜开源项目技术资讯提交条目
登录
< 返回工具列表
C

creduce

> 编程语言
开源

C-Reduce, 一款 C 和 C++ 程序减少器

1.7K stars0 点赞1 次浏览
访问官网GitHub

工具介绍

C-Reduce, 一款 C 和 C++ 程序减少器

C-Reduce

关于

C-Reduce 是一款工具,它可以处理具有大量内存分配和释放的大型 C 或 C++ 程序。 有利的属性(例如触发编译器错误) 自动生成一个大小远小的 C/C++ 程序,具有相同的功能 它是为那些发现和报告问题的人而设计的。 编译器和其他处理 C/C++ 代码的工具中的错误。

  • 注意:* C-Reduce 确实能够很好地减小文件大小。 使用非 C/C++ 语言的程序,例如 JavaScript 和 Rust。 如果您需要减少其他语言的程序,请提供 试试看。 文档和其他信息可以在 [C-Reduce 网站] 上找到。 页面](http://embed.cs.utah.edu/creduce/)

安装

请参阅 INSTALL.md。

说明

  1. 如果设置为使用多个核心, C-Reduce 可能会导致 /tmp 中的空间泄露。这是因为有时 C-Reduce 会在并行计算的结果表明某个编译器调用不再有用时杀死该调用。如果编译器在被杀死时在 /tmp 中留下文件, C-Reduce 没有办法发现和删除这些文件。如果临时文件空间有限,您需要不时手动进行此操作。泄露通常是非常缓慢的。如果需要完全避免此问题,可以在单个核心上运行 C-Reduce (使用 --n 1) , 在这种情况下, C-Reduce 永远不会杀死正在运行的编译器实例。或者,如 -pipe (由 GCC 支持) 这样的命令行选项可以完全抑制临时文件的创建。另一种可能性是在调用 C-Reduce 之前将 TMPDIR 环境变量设置为类似于 /tmp/creduce-stuff 的值 - 如果您调用的工具尊重此变量。

  2. 每次执行有趣性测试时,都会在一个新的临时目录中创建一个包含正在压缩的文件的副本。如果您的有趣性测试需要访问其他文件,则应将它们复制到当前工作目录中,或者使用绝对路径来引用它们。

Issues· 0 开放

查看全部 Issues在 GitHub 打开

暂无开放 Issues,或尚未同步最近议题。

> 标签

C++

暂无评论,来聊聊你的看法吧

> 工具信息

发布日期2026年8月1日
最后更新2026年9月17日
分类编程语言
定价开源

> 相关工具

T
TypeScript
JavaScript 的超集,为前端与全栈提供静态类型
P
Python
通用编程语言,广泛用于 Web、数据与 AI
G
Go
Google 推出的简洁高效系统语言