Middleware, development tools, realtime operating system
software and services for superior embedded design


Home
QNX Community Resources
Developer Support
QNX Documentation Library
QNX Developer Support

QNX Developer Support

QNX Software Systems
Developer Resources
Blogs
Board support packages
Foundry27 projects
Forums
Hardware support listing
Online video tutorials
Product documentation
Technical Articles

[Previous] [Contents] [Index] [Next]

ENDIAN_BE32()

Return a big-endian 32-bit value in native format

Synopsis:

#include <gulliver.h>

uint32_t ENDIAN_BE32( uint32_t num );

Arguments:

num
The big-endian number you want to convert.

Library:

libc

Use the -l c option to qcc to link against this library. This library is usually included automatically.

Description:

The ENDIAN_BE32() macro returns the native version of the big-endian value num.

Returns:

The native-endian value of num.

Examples:

Convert a big-endian value to native-endian:

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

int main( void )
{
    uint32_t val = 0xdeadbeef;
    
    printf( "0x%08x = 0x%08x\n",
            val, ENDIAN_BE32( val ) );

    return EXIT_SUCCESS;
}

On a little-endian system, this prints:

0xdeadbeef = 0xefbeadde

Classification:

QNX Neutrino

Safety:
Cancellation point No
Interrupt handler Yes
Signal handler Yes
Thread Yes

Caveats:

ENDIAN_BE32() is implemented as a macro.

See also:

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


[Previous] [Contents] [Index] [Next]