bswap(3)

الاسم
bswap_16, bswap_32, bswap_64 - عكس ترتيب البايتات

المكتبة
مكتبة سي المعيارية (libc، -lc)

موجز
#include <byteswap.h>

uint16_t bswap_16(uint16_t x);
uint32_t bswap_32(uint32_t x);
uint64_t bswap_64(uint64_t x);

الوصف
ترجع هذه الدوال قيمة يُعكس فيها ترتيب البايتات في وسائطها ذات 2 أو 4 أو 8 بايت.

قيمة الإرجاع
ترجع هذه الدوال قيمة وسيطها مع عكس البايتات.

الأخطاء
تنجح هذه الدوال دائمًا.

المعايير
GNU.

أمثلة
يبدل البرنامج أدناه بايتات العدد الصحيح ذي 8 بايت المقدم كوسيط سطر أوامر. توضح جلسة الصدفة التالية استخدام البرنامج:

    $ ./a.out 0x0123456789abcdef;
    0x123456789abcdef ==> 0xefcdab8967452301

  مصدر البرنامج
    #include <byteswap.h>
    #include <inttypes.h>
    #include <stdint.h>
    #include <stdio.h>
    #include <stdlib.h>

    int
    main(int argc, char *argv[])
    {
        uint64_t x;

        if (argc != 2) {
            fprintf(stderr, "Usage: %s <num>\n", argv[0]);
            exit(EXIT_FAILURE);
        }

        x = strtoull(argv[1], NULL, 0);
        printf("%#w64x ==> %#w64x\n", x, bswap_64(x));

        exit(EXIT_SUCCESS);
    }

انظر أيضًا
byteorder(3), endian(3)

ترجمة
تُرجمت هذه الصفحة من الدليل بواسطة زايد السعيدي <zayed.alsaidi@gmail.com>

هذه الترجمة هي وثيقة مجانية؛ راجع رخصة جنو العامة الإصدار 3 (https://www.gnu.org/licenses/gpl-3.0.html) أو ما بعده للاطلاع على شروط حقوق النشر. لا توجد أي ضمانات.

إذا وجدت أي أخطاء في ترجمة صفحة الدليل هذه، يرجى إرسال بريد إلكتروني إلى قائمة بريد المترجمين: kde-l10n-ar@kde.org.