| confstr(3) | Library Functions Manual | confstr(3) |
الاسم¶
confstr - الحصول على متغيرات سلسلة تعتمد على الإعدادات
المكتبة¶
مكتبة سي المعيارية (libc، -lc)
موجز¶
#include <unistd.h>
size_t confstr(size_t size;
int name, char buf[size], size_t size);
confstr():
_POSIX_C_SOURCE >= 2 || _XOPEN_SOURCE
الوصف¶
confstr() يحصل على قيمة متغيرات السلسلة المعتمدة على الإعدادات.
الوسيطة name هي متغير النظام المراد الاستعلام عنه. المتغيرات التالية مدعومة:
- _CS_GNU_LIBC_VERSION (مكتبة GNU C فقط؛ منذ glibc 2.3.2)
- سلسلة تحدد إصدار مكتبة GNU C على هذا النظام (مثال، "glibc 2.3.4").
- _CS_GNU_LIBPTHREAD_VERSION (مكتبة GNU C فقط؛ منذ glibc 2.3.2)
- سلسلة تحدد تطبيق POSIX المقدم من مكتبة C هذه (مثال، "NPTL 2.3.4" أو "linuxthreads-0.10").
- _CS_PATH
- قيمة لمتغير PATH تشير إلى أين يمكن العثور على جميع أدوات POSIX.2 القياسية.
If buf is not NULL and size is not zero, confstr() copies the value of the string to buf truncated to size - 1 bytes if necessary, with a null byte ('\0') as terminator. This can be detected by comparing the return value of confstr() against size.
إذا كان size صفرًا و buf NULL، يُرجع confstr() القيمة فقط كما هو محدد أدناه.
قيمة الإرجاع¶
إذا كان name متغير إعدادات صالحًا، يُرجع confstr() عدد البايتات (بما في ذلك البايت الفارغ المنهي) المطلوبة لاحتواء القيمة الكاملة لذلك المتغير. قد تكون هذه القيمة أكبر من size، مما يعني أن القيمة في buf مقتطعة.
إذا كان name متغير إعدادات صالحًا، لكن ذلك المتغير ليس له قيمة، يُرجع confstr() 0. إذا لم يتوافق name مع متغير إعدادات صالح، يُرجع confstr() 0، ويُضبط errno على EINVAL.
الأخطاء¶
- EINVAL
- قيمة name غير صالحة.
السمات¶
للاطلاع على شرح للمصطلحات المستخدمة في هذا القسم، انظر attributes(7).
| الواجهة | السمة | القيمة |
| confstr() | سلامة الخيوط | MT-Safe |
المعايير¶
POSIX.1-2008.
التاريخ¶
POSIX.1-2001.
أمثلة¶
مقطع الكود التالي يحدد المسار حيث يمكن العثور على أدوات نظام POSIX.2:
char *pathbuf; size_t n; n = confstr(_CS_PATH, NULL, (size_t) 0); pathbuf = malloc(n); if (pathbuf == NULL)
abort(); confstr(_CS_PATH, pathbuf, n);
انظر أيضًا¶
getconf(1), sh(1), exec(3), fpathconf(3), pathconf(3), sysconf(3), system(3)
ترجمة¶
تُرجمت هذه الصفحة من الدليل بواسطة زايد السعيدي <zayed.alsaidi@gmail.com>
هذه الترجمة هي وثيقة مجانية؛ راجع رخصة جنو العامة الإصدار 3 أو ما بعده للاطلاع على شروط حقوق النشر. لا توجد أي ضمانات.
إذا وجدت أي أخطاء في ترجمة صفحة الدليل هذه، يرجى إرسال بريد إلكتروني إلى قائمة بريد المترجمين: kde-l10n-ar@kde.org.
| 8 فبراير 2026 | صفحات دليل لينكس (لم تصدر بعد) |