www.digitalmars.com         C & C++   DMDScript  

c++ - ctype.h

reply John Jameson <johnj labcenter.co.uk> writes:
The ctype functions isspace() and friends are unaware of whether
the compiler is set to treat chars as signed or unsigned. So things
like isspace('µ') produce random results depending on what is in
memory before the _pctype array.

Should ALL the macros in ctype.h cast to unsigned char? Curiously,
the isleadbyte() macro already does.
Mar 14 2007
parent Bertel Brander <bertel post4.tele.dk> writes:
John Jameson skrev:
 The ctype functions isspace() and friends are unaware of whether
 the compiler is set to treat chars as signed or unsigned. So things
 like isspace('�') produce random results depending on what is in
 memory before the _pctype array.
 
 Should ALL the macros in ctype.h cast to unsigned char? Curiously,
 the isleadbyte() macro already does.
You should cast the argument to the macros/functions in ctype.h to unsigned. -- Just another homepage: http://damb.dk But it's mine - Bertel
Mar 14 2007