Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10.2 9/18/84; site watmath.UUCP Path: utzoo!watmath!rbutterworth From: rbutterworth@watmath.UUCP (Ray Butterworth) Newsgroups: net.lang.c Subject: Re: Powers of C Message-ID: <1521@watmath.UUCP> Date: Fri, 11-Jul-86 08:48:02 EDT Article-I.D.: watmath.1521 Posted: Fri Jul 11 08:48:02 1986 Date-Received: Sat, 12-Jul-86 04:15:30 EDT References: <4824@sun.uucp> <499@cbmvax.cbmvax.cbm.UUCP> <6056@sri-spam.ARPA> <2306@umcp-cs.UUCP> <6061@sri-spam.ARPA> <2333@umcp-cs.UUCP> Organization: U of Waterloo, Ontario Lines: 17 > I suppose the series of functions > errf(), ferrf(), serrf(), verrf(), vferrf(), vserrf() would suffice. > -- > In-Real-Life: Chris Torek, Univ of MD Comp Sci Dept (+1 301 454 1516) Isn't it interesting how every time you write a printf-like function you also have to write a v-version of it too? I guess that's one way of getting free advertising for system V. Our solution at waterloo was to introduce a %v format which takes the next two arguments as the format string and the argument list pointer. That way you only have to write one version of each function, the other version comes for free. It also means you can have things like "%s: %v: %s\n" in a single call instead of having to make three calls. This is like the "%r" format that occasionally pops up in versions of stdio but it doesn't require that the format be on the stack with the arguments, and it doesn't act like a goto.