Swaps bytes.
void _swab( char *src, char *dest, int n );
Routine | Required Header | Compatibility |
_swab | <stdlib.h> | Win 95, Win NT |
For additional compatibility information, see Compatibility in the Introduction.
Libraries
LIBC.LIB | Single thread static library, retail version |
LIBCMT.LIB | Multithread static library, retail version |
MSVCRT.LIB | Import library for MSVCRT.DLL, retail version |
Return Value
None
Parameters
src
Data to be copied and swapped
dest
Storage location for swapped data
n
Number of bytes to be copied and swapped
Remarks
The _swab function copies n bytes from src, swaps each pair of adjacent bytes, and stores the result at dest. The integer n should be an even number to allow for swapping. _swab is typically used to prepare binary data for transfer to a machine that uses a different byte order.
Example
/* SWAB.C illustrates:
* _swab
*/
#include <stdlib.h>
#include <stdio.h>
char from[] = "BADCFEHGJILKNMPORQTSVUXWZY";
char to[] = "..........................";
void main()
{
printf( "Before:\t%s\n\t%s\n\n", from, to );
_swab( from, to, sizeof( from ) );
printf( "After:\t%s\n\t%s\n\n", from, to );
}
Output
Before: BADCFEHGJILKNMPORQTSVUXWZY
..........................
After: BADCFEHGJILKNMPORQTSVUXWZY
ABCDEFGHIJKLMNOPQRSTUVWXYZ