stdio.c 965 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. #include <stdarg.h>
  2. #include <stddef.h>
  3. typedef struct FILE FILE;
  4. int vfprintf(FILE * stream, const char * fmt, va_list ap);
  5. int fprintf(FILE * stream, const char * fmt, ...) {
  6. int ret;
  7. va_list ap;
  8. va_start(ap, fmt);
  9. ret = vfprintf(stream, fmt, ap);
  10. va_end(ap);
  11. return ret;
  12. }
  13. int vprintf(const char * fmt, va_list ap);
  14. int printf(const char * fmt, ...) {
  15. int ret;
  16. va_list ap;
  17. va_start(ap, fmt);
  18. ret = vprintf(fmt, ap);
  19. va_end(ap);
  20. return ret;
  21. }
  22. int vsnprintf(char * s, size_t n, const char * fmt, va_list ap);
  23. int snprintf(char * s, size_t n, const char * fmt, ...) {
  24. int ret;
  25. va_list ap;
  26. va_start(ap, fmt);
  27. ret = vsnprintf(s, n, fmt, ap);
  28. va_end(ap);
  29. return ret;
  30. }
  31. int vsprintf(char * s, const char * fmt, va_list ap);
  32. int sprintf(char *s, const char * fmt, ...) {
  33. int ret;
  34. va_list ap;
  35. va_start(ap, fmt);
  36. ret = vsprintf(s, fmt, ap);
  37. va_end(ap);
  38. return ret;
  39. }