你听说过自动 C 代码生成器吗?
我必须做一种奇怪的 API 功能研究,其中包括每个函数执行的至少一次尝试。无论如何,它可能会导致崩溃、分段错误。我只需要注册每个函数调用。
所以我从使用的源中得到了一长串(数百个)函数
ctags -x --c-kinds=f *.c
我可以使用任何工具来生成调用它们中的每一个的代码吗?非常感谢。
UPD:感谢您的所有回答。
你听说过自动 C 代码生成器吗?
我必须做一种奇怪的 API 功能研究,其中包括每个函数执行的至少一次尝试。无论如何,它可能会导致崩溃、分段错误。我只需要注册每个函数调用。
所以我从使用的源中得到了一长串(数百个)函数
ctags -x --c-kinds=f *.c
我可以使用任何工具来生成调用它们中的每一个的代码吗?非常感谢。
UPD:感谢您的所有回答。
也许像 autoconf 这样的东西可以帮助你:如here所述。特别是检查 AC_CHECK_FUNCS。Autoconf 创建小程序来测试注册函数的存在。
您还可以考虑自定义 GCC 编译器,例如使用MELT扩展(例如,在某些自定义编译期间会生成测试)。然后你甚至可以定义你自己的#pragma
或__attribute__
参数化这些函数(启用它们的自动测试,为测试提供默认参数等)。
但是,我不确定这是单元测试的正确方法。有很多单元测试框架(但我对它们不是很熟悉)。