| 9 | #include <stdarg.h> |
| 10 | |
| 11 | void vary(const char *s, ...) { |
| 12 | va_list v; |
| 13 | va_start(v, s); |
| 14 | char d[20]; |
| 15 | vsnprintf(d, 20, s, v); |
| 16 | puts(d); |
| 17 | |
| 18 | // Try it with copying |
| 19 | va_list tempva; |
| 20 | va_copy(tempva, v); |
| 21 | vsnprintf(d, 20, s, tempva); |
| 22 | puts(d); |
| 23 | |
| 24 | va_end(v); |
| 25 | } |
| 26 | |
| 27 | void vary2(char color, const char *s, ...) { |
| 28 | va_list v; |