diff --git a/libc/printf.cc b/libc/printf.cc index 09be03a7894c914a93283184e0b7eafdf4dfe966..a94eb4614bdeabcf0dee16ebf17644a11fcb4477 100644 --- a/libc/printf.cc +++ b/libc/printf.cc @@ -322,3 +322,14 @@ int vsnprintf(char *str, size_t size, const char *format, va_list ap) *last = '\0'; return out.length(); } + +int sprintf(char* str, const char* format, ...) +{ + va_list ap; + + va_start(ap, format); + auto out = strprintf(format, ap); + va_end(ap); + std::copy(out.begin(), out.end(), str); + return out.length(); +}