_lrotl, _lrotr_lrotl, _lrotr

Powoduje obrócenie bitów w lewo (_lrotl) lub w prawo (_lrotr).Rotates bits to the left (_lrotl) or right (_lrotr).

SkładniaSyntax

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

ParametryParameters

wartościamivalue
Wartość, która ma zostać obrócona.Value to be rotated.

nocnshift
Liczba bitów na wartośćprzesunięcia.Number of bits to shift value.

Wartość zwracanaReturn Value

Obie funkcje zwracają wartość obróconą.Both functions return the rotated value. Nie ma żadnego powrotu błędu.There's no error return.

UwagiRemarks

Funkcje _lrotl i _lrotr obracają wartość przez bity SHIFT .The _lrotl and _lrotr functions rotate value by shift bits. _lrotl obraca wartość z lewej strony w kierunku bardziej znaczących bitów._lrotl rotates the value left, toward more significant bits. _lrotr obraca wartość w prawo w kierunku mniej znaczących bitów._lrotr rotates the value right, toward less significant bits. Obie funkcje zawijają bity, obracają się z jednego końca wartości do drugiego.Both functions wrap bits rotated off one end of value to the other end.

WymaganiaRequirements

ProceduraRoutine Wymagany nagłówekRequired header
_lrotl, _lrotr_lrotl, _lrotr <stdlib.h>

Aby uzyskać więcej informacji o zgodności, zobacz zgodność.For more compatibility information, see Compatibility.

PrzykładExample

// 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

Zobacz teżSee also

Obsługa zmiennoprzecinkowaFloating-Point Support
_rotl, _rotl64, _rotr, _rotr64_rotl, _rotl64, _rotr, _rotr64