sprintf.c 545 B

12345678910111213141516171819202122232425262728293031
  1. /*
  2. * sprintf - print formatted output on an array
  3. */
  4. /* $Id$ */
  5. #include <stdio.h>
  6. #include <stdarg.h>
  7. #include "loc_incl.h"
  8. int
  9. sprintf(char * s, const char *format, ...)
  10. {
  11. va_list ap;
  12. int retval;
  13. FILE tmp_stream;
  14. va_start(ap, format);
  15. tmp_stream._fd = -1;
  16. tmp_stream._flags = _IOWRITE + _IONBF + _IOWRITING;
  17. tmp_stream._buf = (unsigned char *) s;
  18. tmp_stream._ptr = (unsigned char *) s;
  19. tmp_stream._count = 32767;
  20. retval = _doprnt(format, ap, &tmp_stream);
  21. putc('\0',&tmp_stream);
  22. va_end(ap);
  23. return retval;
  24. }