2 ms·
I remember that the various is* man pages noted that most of them are only defined if isascii() is true. So I always used e.g. (isascii(x) && ispunct()) FWIW,
by emmelaich 7y ago
I remember that the various is* man pages noted that most of them are only defined if isascii() is true. So I always used e.g. (isascii(x) && ispunct())
FWIW, just looked at the man page (macos) and iswdigit() and isnumber() are mentioned.
- _kst_ 7y agoisascii() is not defined by ISO C. (It is defined by POSIX, but POSIX says it may be removed in a future version.) I see that POSIX explicitly says that isascii(x) is "defined on all integer values" (it should have said "all int values"). Personally I'd rather cast to unsigned char.