.\" -*- coding: UTF-8 -*- '\" t .\" Copyright, Bruno Haible .\" Copyright, the authors of the Linux man-pages project .\" .\" SPDX-License-Identifier: GPL-2.0-or-later .\" .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .TH mbtowc 3 "8 فبراير 2026" "صفحات دليل لينكس 6.18" .SH الاسم mbtowc \- تحويل تسلسل متعدد البايتات إلى محرف عريض .SH المكتبة مكتبة سي المعيارية (\fIlibc\fP،\ \fI\-lc\fP) .SH موجز .nf \fB#include \fP .P \fBint mbtowc(\fPsize_t size; \fB wchar_t *restrict \fP\fIpwc\fP\fB, const char \fP\fIs\fP\fB[restrict \fP\fIsize\fP\fB],\fP \fB size_t \fP\fIsize\fP\fB);\fP .fi .SH الوصف الحالة الرئيسية لهذه الدالة هي عندما يكون \fIs\fP ليس NULL و \fIpwc\fP ليس NULL. في هذه الحالة، تفحص الدالة \fBmbtowc\fP() على الأكثر \fIsize\fP بايت من السلسلة متعددة البايتات بدءًا من \fIs\fP، وتستخرج المحرف متعدد البايتات الكامل التالي، وتحوله إلى محرف عريض وتخزنه في \fI*pwc\fP. تُحدّث حالة إزاحة داخلية معروفة فقط للدالة \fBmbtowc\fP(). إذا لم يُشر \fIs\fP إلى بايت فارغ (\[aq]\[rs]0\[aq])، فإنها تُرجع عدد البايتات التي استُهلكت من \fIs\fP، وإلا تُرجع 0. .P إذا كانت البايتات \fIsize\fP بدءًا من \fIs\fP لا تحتوي على محرف متعدد البايتات كامل، أو إذا كانت تحتوي على تسلسل متعدد البايتات غير صالح، تُرجع \fBmbtowc\fP() \-1. يمكن أن يحدث هذا حتى لو كان \fIsize\fP >= \fIMB_CUR_MAX\fP، إذا كانت السلسلة متعددة البايتات تحتوي على تسلسلات إزاحة زائدة. .P حالة مختلفة هي عندما يكون \fIs\fP ليس NULL ولكن \fIpwc\fP هو NULL. في هذه الحالة، تتصرف الدالة \fBmbtowc\fP() كما سبق، باستثناء أنها لا تخزن المحرف العريض المُحوّل في الذاكرة. .P .\" The Dinkumware doc and the Single UNIX specification say this, but .\" glibc doesn't implement this. حالة ثالثة هي عندما يكون \fIs\fP هو NULL. في هذه الحالة، يُتجاهل \fIpwc\fP و \fIsize\fP. تُعيد الدالة \fBmbtowc\fP() ضبط حالة الإزاحة، المعروفة فقط لهذه الدالة، إلى الحالة الأولية، وتُعيد قيمة غير صفرية إذا كان الترميز يحتوي على حالة إزاحة غير بديهية، أو صفرًا إذا كان الترميز عديم الحالة. .SH "قيمة الإرجاع" إذا كان \fIs\fP ليس NULL، تُرجع الدالة \fBmbtowc\fP() عدد البايتات المستهلكة بدءًا من \fIs\fP، أو 0 إذا أشار \fIs\fP إلى بايت فارغ، أو \-1 عند الفشل. .P إذا كان \fIs\fP هو NULL، تُرجع الدالة \fBmbtowc\fP() قيمة غير صفرية إذا كان الترميز يحتوي على حالة إزاحة غير بديهية، أو صفرًا إذا كان الترميز عديم الحالة. .SH السمات للاطلاع على شرح للمصطلحات المستخدمة في هذا القسم، انظر \fBattributes\fP(7). .TS allbox; lbx lb lb l l l. الواجهة السمة القيمة T{ .na .nh \fBmbtowc\fP() T} سلامة الخيوط MT\-Unsafe race .TE .SH الإصدارات هذه الدالة ليست آمنة للخيوط المتعددة. تُوفر الدالة \fBmbrtowc\fP(3) واجهة أفضل لنفس الوظيفة. .SH المعايير C11, POSIX.1\-2008. .SH التاريخ POSIX.1\-2001، C99. .SH ملاحظات يعتمد سلوك \fBmbtowc\fP() على فئة \fBLC_CTYPE\fP من الإعدادات المحلية الحالية. .SH "انظر أيضًا" \fBMB_CUR_MAX\fP(3), \fBmblen\fP(3), \fBmbrtowc\fP(3), \fBmbstowcs\fP(3), \fBwcstombs\fP(3), \fBwctomb\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 .