Unsigned and Bitwise Operators
CusterDD
ddc at druak.UUCP
Tue Jun 26 05:59:48 AEST 1984
<munch>
The following program always reports -1 is negative, -1 is positive
on UNIX 5.05 running on VAX-11/780, 3B20 and 3B2.
I used the cc compiler
=============
#include <stdio.h>
main()
{
char foo;
unsigned char ufoo;
foo = ufoo = 1;
if ((-1 | foo) < 0) printf("-1 is negative");
if ((-1 | ufoo) > 0) printf("-1 is positive");
}
==============
If the ufoo test were to read:
if ((-1 | ufoo) < 0) printf("-1 is positive");
then the printf would not be executed.
David Custer
AT&T Information Systems Labs
(303) 538-3517
{druak | druky | druxp}!ddc
UNIX is a trademark of AT&T Bell Laboratories
More information about the Comp.unix.wizards
mailing list