asprintf(3)

الاسم
asprintf, vasprintf - اطبع إلى سلسلة محارف مخصصة

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

موجز
#define _GNU_SOURCE         /* انظر feature_test_macros(7) */
#include <stdio.h>

int asprintf(char **restrict strp, const char *restrict fmt, ...);
int vasprintf(char **restrict strp, const char *restrict fmt,
              va_list ap);

الوصف
الدالتان asprintf() و vasprintf() هما نظيرتا sprintf(3) و vsprintf(3)، باستثناء أنهما تخصصان سلسلة كبيرة بما يكفي لاستيعاب المخرجات بما في ذلك البايت الفارغ الختامي ('\0')، وتعيدان مؤشرًا إليها عبر الوسيط الأول. يجب تمرير هذا المؤشر إلى free(3) لتحرير التخزين المخصص عندما لا يعود مطلوبًا.

قيمة الإرجاع
عند النجاح، تُعيد هاتان الدالتان عدد البايتات المطبوعة، تمامًا مثل sprintf(3). عند الخطأ، يُعاد -1، ويُضبط errno للإشارة إلى الخطأ، وتكون محتويات strp غير معرفة.

الأخطاء
انظر sprintf(3) وmalloc(3).

السمات
للاطلاع على شرح للمصطلحات المستخدمة في هذا القسم، انظر attributes(7).
الواجهة | السمة | القيمة
asprintf(), vasprintf() | سلامة الخيوط | المنطقة (locale) آمنة لتعدد المسالك (MT-Safe)

الإصدارات
يضبط تطبيق FreeBSD strp إلى NULL عند الخطأ.

المعايير
جنو، بي إس دي (BSD).

انظر أيضًا
free(3), malloc(3), printf(3)

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

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

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