fork download
  1. #include <iostream>
  2. #include <stdarg.h>
  3. #include <string>
  4. #include <vector>
  5.  
  6. std::string string_format(const char *fmt, ...) {
  7. std::vector<char> str(100);
  8. va_list ap;
  9. while (1) {
  10. va_start(ap, fmt);
  11. int n = vsnprintf(&str[0], str.size(), fmt, ap);
  12. va_end(ap);
  13. if (n > -1 && n < str.size()) {
  14. str.resize(n);
  15. return &str[0];
  16. }
  17. str.resize(str.size() * 2);
  18. }
  19. }
  20.  
  21. int main() {
  22. std::cout << string_format("%s %s!\n", "Hello", "World");
  23. return 0;
  24. }
Success #stdin #stdout 0.01s 2812KB
stdin
Standard input is empty
stdout
Hello World!