> ---
> You didn't fully eliminate the class entry, thus you have one too many
> pointers, hence you've got a "null" pointer, which, your compiler should
> be complaining about.


Ah, the surety that comes from not having all the facts :)

point of order: in *nix, it will most definitely complain as you put it.

g++ -ggdb -Wall -MD  -c -o ofiles/act_info.o act_info.c
act_info.c: In function `void do_who (CHAR_DATA *, char *)':
act_info.c:2205: warning: too few arguments for format


in windows with MSVC++ on the other hand even at warning level 4 it does
not complain about extra specifiers.. it just removes/ignores 'em. unless
you happen to have removed a argument for a %d and replaced it with an arg
for a %s that is. Call it a user-friendly (in my opinion user stupid)
feature of a broken compiler.


And as far as it goes, he does _not_ "have one too many pointers"
he has one too many format specification fields.

from the help for sprintf...
"Each field of the format specification is a single character or a number
signifying a particular format option. The simplest format specification
contains only the percent sign and a type character (for example, %s).
If a percent sign is followed by a character that has no meaning as a
format field, the character is copied to stdout. For example, to print
a percent-sign character, use %%.

The optional fields, which appear before the type character, control other
aspects of the formatting, as follows:

type

Required character that determines whether the associated argument is
interpreted
as a character, a string, or a number (see Table R.3)..."


If you are gonna [EMAIL PROTECTED] about "common C" get it right :)


Steve, still coding :)


Reply via email to