1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
#include <stdarg.h> #include <stdio.h> #include <unistd.h> _syscall1(int, puts, char*, s); int printf(char *fmt, ...) { int ret; char buf[1024]; va_list ap; va_start(ap, fmt); ret = vsprintf(buf, fmt, ap); va_end(ap); puts(buf); return ret; }