_lrotl
, _lrotr
Gira bits para a esquerda (_lrotl
) ou para a direita (_lrotr
).
Sintaxe
unsigned long _lrotl( unsigned long value, int shift );
unsigned long _lrotr( unsigned long value, int shift );
Parâmetros
value
O valor a ser girado.
shift
Número de bits a serem deslocados value
.
Valor retornado
Ambas as funções retornam o valor girado. Não há retorno de erro.
Comentários
As _lrotl
funções e _lrotr
giram value
por shift
bits. _lrotl
gira o valor à esquerda, em direção a bits mais significativos. _lrotr
gira o valor para a direita, em direção a bits menos significativos. Ambas as funções envolvem bits girados de uma extremidade value
para a outra.
Requisitos
Rotina | Cabeçalho necessário |
---|---|
_lrotl , _lrotr |
<stdlib.h> |
Para obter informações sobre compatibilidade, consulte Compatibilidade.
Exemplo
// 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
Confira também
Suporte matemático e de ponto flutuante
_rotl
, _rotl64
, _rotr
, _rotr64