_lrotl, _lrotr_lrotl, _lrotr

비트를 왼쪽 (_lrotl) 또는 오른쪽 (_lrotr)으로 회전 합니다.Rotates bits to the left (_lrotl) or right (_lrotr).

구문Syntax

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

매개 변수Parameters

valuevalue
순환할 값입니다.Value to be rotated.

shiftshift
value를 이동할 비트 수입니다.Number of bits to shift value.

반환 값Return Value

두 함수 모두 순환된 값을 반환합니다.Both functions return the rotated value. 오류가 반환 되지 않습니다.There's no error return.

설명Remarks

_Lrotl_lrotr 함수는 shift 비트로 회전 합니다.The _lrotl and _lrotr functions rotate value by shift bits. _lrotl 는 더 중요 한 비트 쪽으로 값을 왼쪽으로 회전 합니다._lrotl rotates the value left, toward more significant bits. _lrotr 값을 유효 하지 않은 비트 단위로 오른쪽으로 회전 합니다._lrotr rotates the value right, toward less significant bits. 두 함수 모두 순환되어 value의 한쪽 끝에서 잘린 비트 부분을 다른 쪽 끝에 추가합니다.Both functions wrap bits rotated off one end of value to the other end.

요구 사항Requirements

루틴에서 반환된 값Routine 필수 헤더Required header
_lrotl, _lrotr_lrotl, _lrotr <stdlib.h>

호환성에 대한 자세한 내용은 Compatibility을 참조하세요.For more compatibility information, see Compatibility.

예제Example

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

참고 항목See also

부동 소수점 지원Floating-Point Support
_rotl, _rotl64, _rotr, _rotr64_rotl, _rotl64, _rotr, _rotr64