S
swansnow
This is perhaps a basic question, but it's been a while since I've
done C, and none of the searches I did on operators and data types
wanted to address this, so here goes...
In the glibc (linux) library, I found this expression , and I want to
know exactly what it's doing.
res >= 0xfffff001u
Here, res is an int. It looks to me like res is being interpreted as
an unsigned int (long?) and then being compared against the constant
(-4095). So if res happens to be, say, -22, this expression will be
true. If res happens to be -4096, this statement will be false, maybe?
Is that right?

-Corinna
done C, and none of the searches I did on operators and data types
wanted to address this, so here goes...
In the glibc (linux) library, I found this expression , and I want to
know exactly what it's doing.
res >= 0xfffff001u
Here, res is an int. It looks to me like res is being interpreted as
an unsigned int (long?) and then being compared against the constant
(-4095). So if res happens to be, say, -22, this expression will be
true. If res happens to be -4096, this statement will be false, maybe?
Is that right?
-Corinna