Grossman's solution only works on 2-complement machines with sign-propagating right-shift (for signed integers) but if you are willing to accept those restrictions is better than the solution in Joerg Arndt's ftxbook 1.11 (I haven't figured out what his restrictions are). Yes, I said "your computer" which admittedly might already have a single "absolute value" machine instruction, for example... but basically, I'm satisfied. I guess there really ought to be various versions of all Arndt's libraries, one for 2s complement machines, one for 1s complement machines etc etc, which one being detected by #IF statements that at compile time detect your machine type. But, it gets a bit silly at some point. I mean. we'd be better off getting rid of the C language and replacing it with a better language.