>> An fprintf returning 0 is a suspicious event; it's easy to imagine
>> cases where it makes sense, but I don't think I have ever coded one.
>> Probably > N (where N is the smallest reasonable output, defaulting
>> to 1) may be a better test in real code.
> On older systems fprintf returns 0 on success and EOF on failure.
The books I have all recommend testing for "a negative return value"
to detect printf errors. The C standard also specifies "a negative
value" for errors --- it is not guaranteed that that value is EOF.
regards, tom lane