[PATCH] manual: Rewrite the section on widths of integer types.

Rical Jasan ricaljasan@pacific.net
Fri Aug 11 03:37:00 GMT 2017


On 08/10/2017 09:32 AM, Florian Weimer wrote:
> On 07/27/2017 02:22 PM, Rical Jasan wrote:
>> +A common reason that a program needs to know how many bits are in an
>> +integer type is for using an array of @code{long int} as a bit vector.
>> +You can access the bit at index @var{n} with:
>> +
>> +@smallexample
>> +vector[@var{n} / LONGBITS] & (1 << (@var{n} % LONGBITS))
>> +@end smallexample
>> +
>> +@noindent
>> +provided you define @code{LONGBITS} as the number of bits in a
>> +@code{long int}.
> 
> This example should now use ULONG_WIDTH.  The type should be unsigned
> long int, and the constant should be 1UL (not 1), to avoid shifting into
> the sign position.

Thanks.  I left it generic, but had changed "The most common reason" to
"A common reason" because I wasn't 100% sure what the currently
recommended practice would be (and "the most common" seemed too
superlative regardless).

Committed.

Rical



More information about the Libc-alpha mailing list