| NAME | LIBRARY | SYNOPSIS | DESCRIPTION | RETURN VALUE | ERRORS | STANDARDS | EXAMPLES | SEE ALSO | COLOPHON | |
|  | 
bswap(3)                 Library Functions Manual                bswap(3)
       bswap_16, bswap_32, bswap_64 - reverse order of bytes
       Standard C library (libc, -lc)
       #include <byteswap.h>
       uint16_t bswap_16(uint16_t x);
       uint32_t bswap_32(uint32_t x);
       uint64_t bswap_64(uint64_t x);
       These functions return a value in which the order of the bytes in
       their 2-, 4-, or 8-byte arguments is reversed.
       These functions return the value of their argument with the bytes
       reversed.
       These functions always succeed.
       GNU.
       The program below swaps the bytes of the 8-byte integer supplied
       as its command-line argument.  The following shell session
       demonstrates the use of the program:
           $ ./a.out 0x0123456789abcdef;
           0x123456789abcdef ==> 0xefcdab8967452301
   Program source
       #include <byteswap.h>
       #include <inttypes.h>
       #include <stdint.h>
       #include <stdio.h>
       #include <stdlib.h>
       int
       main(int argc, char *argv[])
       {
           uint64_t x;
           if (argc != 2) {
               fprintf(stderr, "Usage: %s <num>\n", argv[0]);
               exit(EXIT_FAILURE);
           }
           x = strtoull(argv[1], NULL, 0);
           printf("%#" PRIx64 " ==> %#" PRIx64 "\n", x, bswap_64(x));
           exit(EXIT_SUCCESS);
       }
       byteorder(3), endian(3)
       This page is part of the man-pages (Linux kernel and C library
       user-space interface documentation) project.  Information about
       the project can be found at 
       ⟨https://www.kernel.org/doc/man-pages/⟩.  If you have a bug report
       for this manual page, see
       ⟨https://git.kernel.org/pub/scm/docs/man-pages/man-pages.git/tree/CONTRIBUTING⟩.
       This page was obtained from the tarball man-pages-6.15.tar.gz
       fetched from
       ⟨https://mirrors.edge.kernel.org/pub/linux/docs/man-pages/⟩ on
       2025-08-11.  If you discover any rendering problems in this HTML
       version of the page, or you believe there is a better or more up-
       to-date source for the page, or you have corrections or
       improvements to the information in this COLOPHON (which is not
       part of the original manual page), send a mail to
       man-pages@man7.org
Linux man-pages 6.15            2025-05-17                       bswap(3)
Pages that refer to this page: byteorder(3), endian(3)