Поделиться через


_lrotl, _lrotr

Выполняет циклический сдвиг битов влево (_lrotlили right ()_lrotr).

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

Параметры

  • значение
    Значение, которое необходимо вращать.

  • shift
    Количество битов для сдвигать Значение.

Возвращаемое значение

обе функции возвращают вращанное значение.Отсутствие получение ошибки.

Заметки

_lrotl и _lrotr вращать функций Значение shift биты._lrotl выполняет циклический сдвиг значение left._lrotr выполняет циклический сдвиг справа от значения.Оба бита равны программы-оболочек использование функций вращанного с одного конца Значение на другом конце.

Требования

Процедура

Обязательный заголовок

_lrotl

<stdlib.h>

_lrotr

<stdlib.h>

Дополнительные сведения о совместимости см. Совместимость во введении.

Библиотеки

Все версии Библиотеки времени выполнения C.

Пример

// crt_lrot.c

#include <stdlib.h>
#include <stdio.h>

int main( void )
{
   unsigned long val = 0x0fac35791;

   printf( "0x%8.8lx rotated left eight times is 0x%8.8lx\n", 
            val, _lrotl( val, 8 ) );
   printf( "0x%8.8lx rotated right four times is 0x%8.8lx\n", 
            val, _lrotr( val, 4 ) );
}

Output

0xfac35791 rotated left eight times is 0xc35791fa
0xfac35791 rotated right four times is 0x1fac3579

Эквивалент в .NET Framework

Неприменимо. Для c# используйте стандартная функция PInvoke. Дополнительные сведения см. в разделе Примеры вызовов неуправляемого кода.

См. также

Ссылки

Поддержка чисел с плавающей запятой

_rotl, _rotl64, _rotr, _rotr64