toupper(3)

الاسم
toupper, tolower, toupper_l, tolower_l - تحويل الأحرف الكبيرة أو الصغيرة

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

موجز
#include <ctype.h>

int toupper(int c);
int tolower(int c);

int toupper_l(int c, locale_t locale);
int tolower_l(int c, locale_t locale);

    متطلبات ماكروات اختبار الميزات لـ glibc (انظر feature_test_macros(7)):

toupper_l()، tolower_l():
    منذ glibc 2.10:
        _XOPEN_SOURCE >= 700
    قبل glibc 2.10:
        _GNU_SOURCE

الوصف
تحوِّل هذه الدوال الأحرف الصغيرة إلى كبيرة، والعكس.

إذا كان c حرفًا صغيرًا، تُرجع toupper() نظيره الكبير، إن وُجد تمثيل كبير في الإعدادات المحلية الحالية. وإلا، تُرجع c. تؤدي الدالة toupper_l() نفس المهمة، لكنها تستخدم الإعدادات المحلية المشار إليها بمقبض الإعدادات المحلية locale.

إذا كان c حرفًا كبيرًا، تُرجع tolower() نظيره الصغير، إن وُجد تمثيل صغير في الإعدادات المحلية الحالية. وإلا، تُرجع c. تؤدي الدالة tolower_l() نفس المهمة، لكنها تستخدم الإعدادات المحلية المشار إليها بمقبض الإعدادات المحلية locale.

إذا لم يكن c قيمة من نوع unsigned char ولا EOF، يكون سلوك هذه الدوال غير مُعرَّف.

يكون سلوك toupper_l() و tolower_l() غير مُعرَّف إذا كان locale هو كائن الإعدادات المحلية الخاص LC_GLOBAL_LOCALE (انظر duplocale(3)) أو لم يكن مقبض كائن إعدادات محلية صالحًا.

قيمة الإرجاع
القيمة المُرجَعة هي قيمة الحرف المُحوَّل، أو c إذا لم يكن التحويل ممكنًا.

السمات
للاطلاع على شرح للمصطلحات المستخدمة في هذا القسم، انظر attributes(7).
الواجهة | السمة | القيمة
toupper()، tolower()، toupper_l()، tolower_l() | سلامة الخيوط | MT-Safe

المعايير

toupper()
tolower()
    C11, POSIX.1-2008.

toupper_l()
tolower_l()
    POSIX.1-2008.

التاريخ

toupper()
tolower()
    C89، 4.3BSD، POSIX.1-2001.

toupper_l()
tolower_l()
    POSIX.1-2008.

ملاحظات
تتطلب المعايير أن يكون المعامل c لهذه الدوال إما EOF أو قيمة قابلة للتمثيل في النوع unsigned char. إذا كان المعامل c من النوع char، يجب تحويله إلى unsigned char، كما في المثال التالي:

    char c;
    ...
    res = toupper((unsigned char) c);

هذا ضروري لأن char قد يكون مكافئًا لـ signed char، وفي هذه الحالة، سيتم تمديد إشارة بايت حيث تكون البتة العليا مضبوطة عند التحويل إلى int، مما يُنتج قيمة خارج نطاق unsigned char.

تختلف تفاصيل ما يُعتبر حرفًا كبيرًا أو صغيرًا باختلاف اللغة. على سبيل المثال، لا تتعرف اللغة المبدئية "C" على الأحرف ذات النبرة، لذا لا يُجرى أي تحويل لها.

في بعض الإعدادات المحلية غير الإنجليزية، توجد أحرف صغيرة ليس لها نظير كبير مقابل؛ الحرف الألماني sharp s هو أحد الأمثلة.

انظر أيضًا
isalpha(3)، newlocale(3)، setlocale(3)، towlower(3)، towupper(3)، uselocale(3)، locale(7)

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

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

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