Bagikan melalui


_swab

Pertukaran byte.

Sintaks

void _swab(
   char *src,
   char *dest,
   int n
);

Parameter

src
Data yang akan disalin dan ditukar.

dest
Lokasi penyimpanan untuk data yang ditukar.

n
Jumlah byte yang akan disalin dan ditukar.

Nilai hasil

Fungsi swab tidak mengembalikan nilai. Fungsi diatur errno ke EINVAL jika src penunjuk atau dest null atau n kurang dari nol, dan handler parameter yang tidak valid dipanggil, seperti yang dijelaskan dalam Validasi parameter.

Untuk informasi selengkapnya tentang kode pengembalian, lihat errno, , _doserrno_sys_errlist, dan _sys_nerr.

Keterangan

Jika n genap, _swab fungsi menyalin n byte dari src, menukar setiap pasangan byte yang berdekatan, dan menyimpan hasilnya di dest. Jika n aneh, _swab salin dan tukar -1 byte pertama ndari src, dan byte akhir tidak disalin. Fungsi _swab ini biasanya digunakan untuk menyiapkan data biner untuk ditransfer ke komputer yang menggunakan urutan byte yang berbeda.

Secara default, status global fungsi ini dicakup ke aplikasi. Untuk mengubah perilaku ini, lihat Status global di CRT.

Persyaratan

Rutin Header yang diperlukan
_swab C: <stdlib.h> C++: <cstdlib> atau <stdlib.h>

Untuk informasi kompatibilitas selengkapnya, lihat Kompatibilitas.

Contoh

// 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.

Baca juga

Manipulasi buffer