_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