As a learning experience I'm porting some stuff from Windows to MacOS and came across something like this:
void SomeClass::someFunction(const char* format, va_list args)
{
int size = _vscprintf(format, args); // length after formatting
std::string s;
s.resize(size);
vsprintf(&s[0]);
...
}
Now, as _vscprintf is Microsoft specific and I haven't found anything similar on Linux I thought I'd ask here.
Let's also assume this code is in some critical path and shouldn't have some extra overhead of heap allocation or such.
What is the recommended replacement for _vscprintf on MacOS/Linux?
Thanks!
See Question&Answers more detail:
os 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…