ENDIAN_SWAP64()

Инвертировать порядок байтов непосредственно в 64-битной переменной

Прототип:

#include <gulliver.h>
void ENDIAN_SWAP64( uint64_t *num );

Аргументы:

num
Указатель на число, байты которого инвертируются.

Библиотека:

libc

Описание:

Макрос ENDIAN_SWAP64() инвертирует порядок байтов непосредственно в переменной num.

Примеры:

Инвертировать порядок байтов значения:

#include <stdio.h>
#include <stdlib.h>
#include <gulliver.h>
#include <inttypes.h>
int main( void )
{
uint64_t val = 0x1234deadbeef5678LL;
ENDIAN_SWAP16( &val );
printf( "val = 0x%016x\n", val );
return (EXIT_SUCCESS);
}

Код генерирует следующий вывод:

$ ./a.out val = 0x7856efbeadde3412

Классификация:

ЗОСРВ «Нейтрино»

Точка остановки потока
Нет
Обработчик прерываний
Да
Обработчик сигналов
Да
В потоке
Да

Предостережения:

ENDIAN_SWAP64() является макросом.

Тематические ссылки:

ENDIAN_BE16(), ENDIAN_BE32(), ENDIAN_BE64(), ENDIAN_LE16(), ENDIAN_LE32(), ENDIAN_LE64(), ENDIAN_RET16(), ENDIAN_RET32(), ENDIAN_RET64(), ENDIAN_SWAP16(), ENDIAN_SWAP32(), htonl(), htons(), ntohl(), ntohs(), UNALIGNED_PUT16(), UNALIGNED_PUT32(), UNALIGNED_PUT64() UNALIGNED_RET16(), UNALIGNED_RET32(), UNALIGNED_RET64(),




Предыдущий раздел: Описание API системной библиотеки