|
|
1.1 root 1: #include <time.h>
2: #include "cem.h"
3:
4: /*
5: * Return a sstring representation of a time. If it is
6: * the same year as now leave out the year. If it is the
7: * same day and we aren't being pedantic leave out the date.
8: */
9: char *
10: stime(t)
11: long t;
12: {
13: register struct tm *tp;
14: register char *p;
15: static struct tm this;
16: static long now;
17: extern char *ctime();
18: extern long time();
19: extern struct tm *localtime();
20:
21: if (now == 0)
22: {
23: now = time((long *)0);
24: this = *localtime(&now);
25: }
26:
27: tp = localtime(&t);
28: p = ctime(&t);
29:
30: if (tp->tm_year == this.tm_year)
31: p[19] = '\0';
32: else
33: p[24] = '\0';
34:
35: if
36: (
37: !pedantic
38: &&
39: tp->tm_mon == this.tm_mon
40: &&
41: tp->tm_mday == this.tm_mday
42: &&
43: tp->tm_year == this.tm_year
44: )
45: return p + 11;
46: else
47: return p;
48: }
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.