|
|
1.1 root 1: #include <varargs.h>
2:
3: #define SIZE 1024
4: extern int printcol;
5:
6: char *doprint();
7:
8: /* VARARGS 1 */
9: print(fmt, va_alist)
10: char *fmt;
11: va_dcl
12: {
13: char buf[SIZE], *out;
14: va_list ap;
15:
16: va_start(ap);
17: out = doprint(buf, fmt, &ap);
18: va_end(ap);
19: return write(1, buf, (int)(out-buf));
20: }
21:
22: /* VARARGS 2 */
23: fprint(fd, fmt, va_alist)
24: char *fmt;
25: va_dcl
26: {
27: char buf[SIZE], *out;
28: va_list ap;
29:
30: va_start(ap);
31: out = doprint(buf, fmt, &ap);
32: va_end(ap);
33: return write(fd, buf, (int)(out-buf));
34: }
35:
36: /* VARARGS 2 */
37: sprint(buf, fmt, va_alist)
38: char *buf;
39: char *fmt;
40: va_dcl
41: {
42: char *out;
43: int scol;
44: va_list ap;
45:
46: scol = printcol;
47: va_start(ap);
48: out = doprint(buf, fmt, &ap);
49: va_end(ap);
50: printcol = scol;
51: return out-buf;
52: }
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.