Sdílet prostřednictvím


_lrotl, _lrotr

Otočí bity doleva (_lrotl) nebo doprava (_lrotr).

Syntaxe

unsigned long _lrotl( unsigned long value, int shift );
unsigned long _lrotr( unsigned long value, int shift );

Parametry

value
Hodnota, kterou chcete otočit.

shift
Počet bitů, které se mají posunout value.

Vrácená hodnota

Obě funkce vrátí otočenou hodnotu. Nevrátí se žádná chyba.

Poznámky

_lrotr Funkce _lrotl se otáčejí value bityshift. _lrotl otočí hodnotu doleva směrem k významnějším bitům. _lrotr otočí hodnotu doprava směrem k méně významným bitům. Obě funkce obtéká bity otočené o jeden konec value na druhý.

Požadavky

Rutina Požadovaný hlavičkový soubor
_lrotl, _lrotr <stdlib.h>

Další informace o kompatibilitě najdete v tématu Kompatibilita.

Příklad

// crt_lrot.c

#include <stdlib.h>
#include <stdio.h>

int main( void )
{
   unsigned long val = 0x0fac35791;

   printf( "0x%8.8lx rotated left eight bits is 0x%8.8lx\n",
            val, _lrotl( val, 8 ) );
   printf( "0x%8.8lx rotated right four bits is 0x%8.8lx\n",
            val, _lrotr( val, 4 ) );
}
0xfac35791 rotated left eight bits is 0xc35791fa
0xfac35791 rotated right four bits is 0x1fac3579

Viz také

Podpora pro matematiku a plovoucí desetinou čárku
_rotl, _rotl64, , _rotr_rotr64