我想为ispc代码实现一个调试函数,它可以将日志级别作为参数,然后打印样式字符串和参数。
签名应该是这样的:
extern "C" void debug_log(enumDebugLevel debugLevel, char *literalString, ...);
我可以看到ispc不支持“函数的变量数”,也不支持字符串或char数据类型,所以我认为这种可能性是非常有限的。
但是,有一个名为print的内置函数,它可以同时处理字符串文本和变量参数计数。我想知道是否有一种方法可以将我的函数实现为一个外部函数,即使ispc本身不支持这些特性。
发布于 2022-06-06 06:09:10
我假设您的应用程序中没有控制台窗口?如果是这样的话,您可以做的一件事是将stdout/stderr重定向到日志记录系统。有很多这样的讨论。
但是,我请求进行更改,允许print()在Windows上调用OutputDebugStringA(),但能够提供自定义回调是一个很好的建议。我将把这个建议添加到下面的GitHub问题上。
https://github.com/ispc/ispc/issues/2140
我是英特尔ISPC团队的一员,欢迎外界提出建议/问题。不过,最好还是通过GitHub联系我们!
https://stackoverflow.com/questions/71581975
复制相似问题