View source code
Display the source code in core/bitop.d from which this
page was generated on github.
Report a bug
If you spot a problem with this page, click here to create a
Bugzilla issue.
Improve this page
Quickly fork, edit online, and submit a pull request for this page.
Requires a signed-in GitHub account. This works well for small changes.
If you'd like to make larger changes you may want to consider using
local clone.
core.bitop.bswap
- multiple declarations
Function bswap
Swaps bytes in a 4 byte uint end-to-end, i.e. byte 0 becomes byte 3, byte 1 becomes byte 2, byte 2 becomes byte 1, byte 3 becomes byte 0.
uint bswap
(
uint v
) pure nothrow @nogc @safe;
Example
writeln(bswap(0x01020304u)); // 0x04030201u
static uint xx = 0x10203040u;
writeln(bswap(xx)); // 0x40302010u
Function bswap
Swaps bytes in an 8 byte ulong end-to-end, i.e. byte 0 becomes byte 7, byte 1 becomes byte 6, etc. This is meant to be recognized by the compiler as an intrinsic.
ulong bswap
(
ulong v
) pure nothrow @nogc @safe;
Example
writeln(bswap(0x01020304_05060708uL)); // 0x08070605_04030201uL
static ulong xx = 0x10203040_50607080uL;
writeln(bswap(xx)); // 0x80706050_40302010uL
Authors
Don Clugston, Sean Kelly, Walter Bright, Alex Rønne Petersen, Thomas Stuart Bockman
License
Copyright © 1999-2022 by the D Language Foundation | Page generated by ddox.