shift right with >>>?

Jonathan M Davis jmdavisProg at gmx.com
Sat Nov 30 23:23:40 PST 2013


On Sunday, December 01, 2013 08:06:26 dennis luehring wrote:
> http://rosettacode.org/wiki/Variable-length_quantity#D
> 
> ulong value = 0x100;
> ubyte[] v = [0x7f & value];
> for (ulong k = value >>> 7; k > 0; k >>>= 7)
> {
>    v ~= (k & 0x7f) | 0x80;
>    if (v.length > 9)
>    {
>      throw new Exception("Too large value.");
>    }
> }
> v.reverse();
> 
> while porting this to D i stumple accross the ">>>" - why is that
> allowed in D?

http://dlang.org/expression.html#ShiftExpression
http://dlang.org/expression.html#AssignExpression

- Jonathan M Davis


More information about the Digitalmars-d mailing list