This documentation is archived and is not being maintained.

_byteswap_uint64, _byteswap_ulong, _byteswap_ushort

Reverses the order of bytes in an integer.

unsigned short _byteswap_ushort (
   unsigned short val
unsigned long _byteswap_ulong (
   unsigned long val
unsigned __int64 _byteswap_uint64 (
   unsigned __int64 val


The integer to reverse byte order.


Required header







For more compatibility information, see Compatibility in the Introduction.

// crt_byteswap.c
#include <stdlib.h>

int main()
   unsigned __int64 u64 = 0x0102030405060708;
   unsigned long ul = 0x01020304;
   printf("byteswap of %I64x = %I64x\n", u64, _byteswap_uint64(u64));
   printf("byteswap of %Ix = %Ix", ul, _byteswap_ulong(ul));
byteswap of 102030405060708 = 807060504030201 byteswap of 1020304 = 4030201