swab()

Инвертировать порядок заданной последовательности байт

Прототип:

#include <unistd.h>
void swab( const void *src,
void *dest,
ssize_t nbytes );

Аргументы:

src
Указатель на буфер, из которого будут копироваться данные.
dest
Указатель на буфер, в который будут копироваться данные.
nbytes
Размер данных, который необходиом скопировать и изменить порядок байт.

Библиотека:

libc

Описание:

Функция swab() копирует nbytes бафт данных из src в dest, меняя местами порядок соседних байт. Значение nbytes должно быть четным.

nbytes не является четным
Обрабатывается nbytes - 1 байт данных. Расположение последнего байта не определено.
nbytes является отрицательным
swab() не выполняет ничего.

Если копирование выполняется между пересекающимися объектами памяти, поведение функции является неопределенным.

Классификация:

POSIX 1003.1 XSI

Точка остановки потока
Нет
Обработчик прерываний
Да
Обработчик сигналов
Да
В потоке
Да

Тематические ссылки:

ENDIAN_SWAP32(), ENDIAN_SWAP64()




Предыдущий раздел: Описание API системной библиотеки