Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Zamienia bajty.
Składnia
void _swab(
char *src,
char *dest,
int n
);
Parametry
src
Dane do skopiowania i zamiany.
dest
Lokalizacja magazynu dla zamienionych danych.
n
Liczba bajtów do skopiowania i zamiany.
Wartość zwracana
Funkcja swab nie zwraca wartości. Funkcja ustawia wartość errno , EINVAL jeśli src wskaźnik lub dest ma wartość null lub n jest mniejszy niż zero, a wywoływana jest nieprawidłowa procedura obsługi parametrów, zgodnie z opisem w temacie Walidacja parametru.
Aby uzyskać więcej informacji na temat kodów zwracanych, zobacz errno, _doserrno, _sys_errlisti _sys_nerr.
Uwagi
Jeśli n tak, _swab funkcja kopiuje bajty n z srcklasy , zamienia każdą parę sąsiednich bajtów i przechowuje wynik na dest. Jeśli n parametr jest nieparzysty, _swab kopiuje i zamienia pierwsze n-1 bajty src, a ostateczny bajt nie jest kopiowany. Funkcja _swab jest zwykle używana do przygotowywania danych binarnych do transferu na maszynę, która używa innej kolejności bajtów.
Domyślnie stan globalny tej funkcji jest zakresem aplikacji. Aby zmienić to zachowanie, zobacz Stan globalny w CRT.
Wymagania
| Procedura | Wymagany nagłówek |
|---|---|
_swab |
C: <stdlib.h> C++: <cstdlib> lub <stdlib.h> |
Aby uzyskać więcej informacji o zgodności, zobacz Zgodność.
Przykład
// crt_swab.c
#include <stdlib.h>
#include <stdio.h>
char from[] = "BADCFEHGJILKNMPORQTSVUXWZY";
char to[] = "...........................";
int main()
{
printf("Before: %s %d bytes\n %s\n\n", from, sizeof(from), to);
_swab(from, to, sizeof(from));
printf("After: %s\n %s\n\n", from, to);
}
Before: BADCFEHGJILKNMPORQTSVUXWZY 27 bytes
...........................
After: BADCFEHGJILKNMPORQTSVUXWZY
ABCDEFGHIJKLMNOPQRSTUVWXYZ.