err(3)

الاسم
err, verr, errx, verrx, warn, vwarn, warnx, vwarnx - رسائل خطأ منسقة

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

موجز
#include <err.h>

[[noreturn]] void err(int eval, const char *fmt, ...);
[[noreturn]] void errx(int eval, const char *fmt, ...);

void warn(const char *fmt, ...);
void warnx(const char *fmt, ...);

#include <stdarg.h>

[[noreturn]] void verr(int eval, const char *fmt, va_list args);
[[noreturn]] void verrx(int eval, const char *fmt, va_list args);

void vwarn(const char *fmt, va_list args);
void vwarnx(const char *fmt, va_list args);

الوصف
تعرض عائلة الدوال err() و warn() رسالة خطأ منسقة على مخرج الخطأ المعياري. في جميع الحالات، يُخرج المكون الأخير من اسم البرنامج، حرف نقطتين، ومسافة. إذا لم تكن الوسيطة fmt NULL، تُخرج رسالة الخطأ المنسقة المشابهة لـ printf(3). يُنهى الإخراج بحرف سطر جديد.

تُلحق الدوال err() و verr() و warn() و vwarn() رسالة خطأ مأخوذة من strerror(3) بناءً على المتغير العام errno، مسبوقة بنقطتين ومسافة إضافيين ما لم تكن الوسيطة fmt NULL.

لا تُلحق الدالتان errx() و warnx() رسالة خطأ.

لا تعود الدوال err() و verr() و errx() و verrx()، بل تخرج بقيمة الوسيطة eval.

السمات
للاطلاع على شرح للمصطلحات المستخدمة في هذا القسم، انظر attributes(7).
الواجهة | السمة | القيمة
err()، errx()، warn()، warnx()، verr()، verrx()، vwarn()، vwarnx() | سلامة الخيوط | المنطقة (locale) آمنة لتعدد المسالك (MT-Safe)

المعايير
BSD.

التاريخ

err()
warn()
    4.4BSD.

أمثلة
اعرض سلسلة معلومات errno الحالية واخرج:

    p = malloc(size);
    if (p == NULL)
        err(EXIT_FAILURE, NULL);
    fd = open(file_name, O_RDONLY, 0);
    if (fd == -1)
        err(EXIT_FAILURE, "%s", file_name);

اعرض رسالة خطأ واخرج:

    if (tm.tm_hour < START_TIME)
        errx(EXIT_FAILURE, "too early, wait until %s",
                start_time_string);

حذر من خطأ:

    fd = open(raw_device, O_RDONLY, 0);
    if (fd == -1)
        warnx("%s: %s: trying the block device",
                raw_device, strerror(errno));
    fd = open(block_device, O_RDONLY, 0);
    if (fd == -1)
        err(EXIT_FAILURE, "%s", block_device);

انظر أيضًا
error(3)، exit(3)، perror(3)، printf(3)، strerror(3)

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

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

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