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.

Function core.bitop.bsf

Scans the bits in v starting with bit 0, looking for the first set bit.

int bsf (
  uint v
) pure nothrow @nogc @safe;

int bsf (
  ulong v
) pure nothrow @nogc @safe;

Returns

The bit number of the first bit set. The return value is undefined if v is zero.

Example

writeln(bsf(0x21)); // 0
writeln(bsf(ulong.max << 39)); // 39

Authors

Don Clugston, Sean Kelly, Walter Bright, Alex Rønne Petersen, Thomas Stuart Bockman

License

Boost License 1.0