1
尝试编写nodejs sprintf本机实现,同时提高我的C++技能,我研究了如何为sprintf提供未知长度的参数。我首先虽然我可以使用vsprintf,但无法找到如何填充它。基本上,nodejs/v8绑定为我提供了一个参数数组,我可以将其转换为向量或别的东西,但不知道如何将其转换为vsprintf期望的va_list或任何其他可以使其工作的替代方法。来自未知参数的C++ sprintf
有没有人可以提出我的策略? d)。
不需要汇编......你可以将数据排列在任何旧字节数组中,并创建一个指向它的'va_list',因为'va_list'实际上只不过是一个指针而已。尽管如此,它仍然是特定于实现的,并且由于他不得不处理格式字符串以找出要存储的数据类型,所以他可能会按照您的建议逐步处理它。 – 2011-03-20 01:39:56