_lrotl
, _lrotr
Soumet des bits à un décalage circulaire vers la gauche (_lrotl
) ou vers la droite (_lrotr
).
Syntaxe
unsigned long _lrotl( unsigned long value, int shift );
unsigned long _lrotr( unsigned long value, int shift );
Paramètres
value
Valeur à faire pivoter.
shift
Nombre de bits à déplacer value
.
Valeur retournée
Les deux fonctions retournent la valeur soumise à un décalage circulaire. Il n’existe aucun retour d’erreur.
Notes
Les _lrotl
fonctions et _lrotr
les fonctions pivotent value
par shift
bits. _lrotl
fait pivoter la valeur vers des bits plus significatifs. _lrotr
fait pivoter la valeur vers des bits moins significatifs. Les deux fonctions encapsulent les bits pivotés d’une extrémité vers value
l’autre extrémité.
Spécifications
Routine | En-tête requis |
---|---|
_lrotl , _lrotr |
<stdlib.h> |
Pour plus d’informations sur la compatibilité, consultez Compatibility.
Exemple
// 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
Voir aussi
Prise en charge des fonctions mathématiques et à virgule flottante
_rotl
, , _rotl64
_rotr
, ,_rotr64