swab
Copies bytes (which must be an even number of bytes) from a source buffer to a destination buffer, swapping every pair of characters
For CLIB V 4.11 or above:
#include <string.h>
void swab (
cinst void *src,
void *dst,
size_t n);
For all other CLIB versions:
#include <string.h>
void swab (
char *src,
char *dst,
int *n);
None
The swab function copies n bytes (which should be even) from src to dst swapping every pair of characters. This is useful for preparing binary data to be transferred to another machine that has a different byte ordering.
WARNING:The bytes copied must be of an even number, or the server will abend.
#include <string.h>
#include <stdio.h>
char *msg = "hTsim seasegi swspaep.d";
#define NBYTES 24
main()
{
auto char buffer[80];
printf( "%s\n", msg );
memset( buffer, `\0’, 80 );
swab( msg, buffer, NBYTES );
printf( "%s\n", buffer );
}
produces the following:
hTsim seasegi swspaep.d This message is swapped.