Exercise: K&P's eprintf Library
Consider the "error-handling" library for the Markov program:
extern void eprintf(char *, ...);
extern void weprintf(char *, ...);
extern char *estrdup(char *);
extern void *emalloc(size_t);
extern void *erealloc(void *, size_t);
extern char *progname(void);
extern void setprogname(char *);
|
What design decisions has it made?
How well does it meet the Interface Design Rules?
|