.\" -*- coding: UTF-8 -*- '\" t .\" Copyright 1993, Thomas Koenig .\" Copyright, the authors of the Linux man-pages project .\" .\" SPDX-License-Identifier: Linux-man-pages-copyleft .\" .\" FIXME Many more values for 'name' are supported, some of which .\" are documented under 'info libc confstr'. .\" See for the rest. .\" These should all be added to this page. .\" See also the POSIX.1-2001 specification of confstr() .\" .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .TH confstr 3 "8 فبراير 2026" "صفحات دليل لينكس 6.18" .SH الاسم confstr \- الحصول على متغيرات سلسلة تعتمد على الإعدادات .SH المكتبة مكتبة سي المعيارية (\fIlibc\fP،\ \fI\-lc\fP) .SH موجز .nf \fB#include \fP .P \fBsize_t confstr(\fPsize_t size; \fB int \fP\fIname\fP\fB, char \fP\fIbuf\fP\fB[\fP\fIsize\fP\fB], size_t \fP\fIsize\fP\fB);\fP .fi .P .RS -4 متطلبات ماكروات اختبار الميزات لـ glibc (انظر \fBfeature_test_macros\fP(7)): .RE .P \fBconfstr\fP(): .nf _POSIX_C_SOURCE >= 2 || _XOPEN_SOURCE .fi .SH الوصف \fBconfstr\fP() يحصل على قيمة متغيرات السلسلة المعتمدة على الإعدادات. .P الوسيطة \fIname\fP هي متغير النظام المراد الاستعلام عنه. المتغيرات التالية مدعومة: .TP \fB_CS_GNU_LIBC_VERSION\fP (مكتبة GNU C فقط؛ منذ glibc 2.3.2) سلسلة تحدد إصدار مكتبة GNU C على هذا النظام (مثال، "glibc 2.3.4"). .TP \fB_CS_GNU_LIBPTHREAD_VERSION\fP (مكتبة GNU C فقط؛ منذ glibc 2.3.2) سلسلة تحدد تطبيق POSIX المقدم من مكتبة C هذه (مثال، "NPTL 2.3.4" أو "linuxthreads\-0.10"). .TP \fB_CS_PATH\fP قيمة لمتغير \fBPATH\fP تشير إلى أين يمكن العثور على جميع أدوات POSIX.2 القياسية. .P If \fIbuf\fP is not NULL and \fIsize\fP is not zero, \fBconfstr\fP() copies the value of the string to \fIbuf\fP truncated to \fIsize \- 1\fP bytes if necessary, with a null byte (\[aq]\[rs]0\[aq]) as terminator. This can be detected by comparing the return value of \fBconfstr\fP() against \fIsize\fP. .P إذا كان \fIsize\fP صفرًا و \fIbuf\fP NULL، يُرجع \fBconfstr\fP() القيمة فقط كما هو محدد أدناه. .SH "قيمة الإرجاع" إذا كان \fIname\fP متغير إعدادات صالحًا، يُرجع \fBconfstr\fP() عدد البايتات (بما في ذلك البايت الفارغ المنهي) المطلوبة لاحتواء القيمة الكاملة لذلك المتغير. قد تكون هذه القيمة أكبر من \fIsize\fP، مما يعني أن القيمة في \fIbuf\fP مقتطعة. .P إذا كان \fIname\fP متغير إعدادات صالحًا، لكن ذلك المتغير ليس له قيمة، يُرجع \fBconfstr\fP() 0. إذا لم يتوافق \fIname\fP مع متغير إعدادات صالح، يُرجع \fBconfstr\fP() 0، ويُضبط \fIerrno\fP على \fBEINVAL\fP. .SH الأخطاء .TP \fBEINVAL\fP قيمة \fIname\fP غير صالحة. .SH السمات للاطلاع على شرح للمصطلحات المستخدمة في هذا القسم، انظر \fBattributes\fP(7). .TS allbox; lbx lb lb l l l. الواجهة السمة القيمة T{ .na .nh \fBconfstr\fP() T} سلامة الخيوط MT\-Safe .TE .SH المعايير POSIX.1\-2008. .SH التاريخ POSIX.1\-2001. .SH أمثلة مقطع الكود التالي يحدد المسار حيث يمكن العثور على أدوات نظام POSIX.2: .P .in +4n .EX 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); .EE .in .SH "انظر أيضًا" \fBgetconf\fP(1), \fBsh\fP(1), \fBexec\fP(3), \fBfpathconf\fP(3), \fBpathconf\fP(3), \fBsysconf\fP(3), \fBsystem\fP(3) .PP .SH ترجمة تُرجمت هذه الصفحة من الدليل بواسطة زايد السعيدي . .PP هذه الترجمة هي وثيقة مجانية؛ راجع .UR https://www.gnu.org/licenses/gpl-3.0.html رخصة جنو العامة الإصدار 3 .UE أو ما بعده للاطلاع على شروط حقوق النشر. لا توجد أي ضمانات. .PP إذا وجدت أي أخطاء في ترجمة صفحة الدليل هذه، يرجى إرسال بريد إلكتروني إلى قائمة بريد المترجمين: .MT kde-l10n-ar@kde.org .ME .