|
|
1.1 root 1: /*
2: * numdate -- command interface to getdate()
3: */
4:
5: #include <stdio.h>
6: #include <sys/types.h>
7:
8: char *malloc();
9:
10: main (argc, argv)
11: int argc;
12: char **argv;
13: {
14: register char *buf, *p, *arg;
15: register int i, n;
16: time_t t, getdate();
17:
18: /* calculate the length of the date string */
19: n = 1;
20: for (i = 1; i < argc; i++)
21: n += strlen (argv[i]) + 1;
22:
23: /* allocate memory for the string */
24: buf = malloc (n);
25: if (buf == NULL) {
26: fprintf (stderr, "numdate: out of memory\n");
27: exit (1);
28: }
29:
30: /* build the string */
31: p = buf;
32: for (i = 1; i < argc; i++) {
33: arg = argv[i];
34: while (*arg)
35: *p++ = *arg++;
36: if (i < argc - 1)
37: *p++ = ' ';
38: }
39: *p++ = '\0';
40:
41: /* attempt to parse it */
42: t = getdate (buf, (time_t) 0);
43: free (buf);
44:
45: /* failed? */
46: if (t == -1) {
47: fprintf (stderr, "numdate: bad argument\n");
48: exit (1);
49: }
50:
51: /* success! */
52: printf ("%ld\n", t);
53:
54: return 0;
55: }
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.