next power of 2

Dmitry Olshansky dmitry.olsh at gmail.com
Sat Oct 6 13:57:52 PDT 2012


On 07-Oct-12 00:54, Dmitry Olshansky wrote:
> On 07-Oct-12 00:48, ref2401 wrote:
>> is there any Phobos function to calculate the next power of 2 of the
>> specified number?
>
> No though it's reinvented in a couple of places I think.
>
> Anyway this should work for unsigned numbers:
>
> import core.bitop;
> T nextPow2(T)(T x){
>      return x == 0 ? 1 : 1^^(bsr(x)+1);
> }

Yikes, 1<<(bsr(x)+1) or 2 ^^ (bsr(x)+1) ...
still haven't got used to 2^^x notation compared to shifts.


-- 
Dmitry Olshansky


More information about the Digitalmars-d-learn mailing list