Signed char - What Foolishness Is T
aglew at gswd-vms.UUCP
aglew at gswd-vms.UUCP
Thu Nov 6 14:46:00 AEST 1986
> I hope you both remember that isANYTHING(x) is only defined to work
> if isascii(x) is true! isascii(u-umlaut) is FALSE! Thus, isupper(u-umlaut)
> does not NEED to work.
>
> John Plocher
First, quoting my out-of-date XJ311/86-017 (which people on the committee
hate us doing, but anyway, because they are reasonably well thought out
rules): "The isupper function tests for any upper case letter... or any
of an implementation defined set of characters for which none of iscntrl,
isdigit, ispunct, or isspace is true"
I don't know why they didn't say isalpha, except that it would be defined
circularly here.
Second, requiring isascii above demonstrates two sorts of chauvinism.
One, character set chauvinism - what about EBCDIC users? Two, linguistic
chauvinism - isupper(u-umlaut) == FALSE, isupper(U-umlaut) == TRUE
is perfectly reasonable behaviour. True, it is not required; but then
if I was working in a language that did not have Y then isalpha('y')
== FALSE would be reasonable, and almost squeaks by.
More information about the Comp.lang.c
mailing list