كيفية اكتشاف ما إذا كانت سلسلة C++ فارغة

Kyfyt Aktshaf Ma Adha Kant Slslt C Farght



في برمجة C++، تعد إدارة البيانات النصية ومعالجتها جانبًا أساسيًا في تطوير البرمجيات. تلعب السلاسل، التي تعمل كتسلسلات للأحرف، دورًا محوريًا في إدارة البيانات النصية. أحد السيناريوهات الشائعة التي يواجهها المبرمجون غالبًا هو الحاجة إلى تحديد ما إذا كانت سلسلة C++ فارغة. تسمى السلسلة التي لا تحتوي على أحرف بسلسلة فارغة. لحسن الحظ، توفر لغة C++ طرقًا مباشرة ضمن مكتبتها القياسية للتأكد من فراغ السلسلة. تستكشف هذه المقالة الطرق والتقنيات المستخدمة لاكتشاف ما إذا كانت سلسلة C++ فارغة أم لا، مما يوفر أساسًا لمعالجة بيانات السلسلة والتحقق من صحتها في برامجك.

الطريقة الأولى: استخدام وظيفة العضو الفارغة ().

أحد الأساليب المباشرة والمدمجة في لغة C++ لتحديد ما إذا كانت السلسلة فارغة تتضمن استخدام وظيفة العضو 'فارغة ().' تعد الدالة 'empty()' جزءًا من فئة سلسلة C++ القياسية وتوفر طريقة ملائمة للتحقق مما إذا كانت السلسلة لا تحتوي على أحرف.

فيما يلي مثال بسيط يوضح استخدام الدالة الفارغة():







#تشمل
#تشمل <سلسلة>
استخدام مساحة الاسم الأمراض المنقولة جنسيا ;

كثافة العمليات رئيسي ( ) {

سلسلة فارغة ;

لو ( فارغة. فارغ ( ) ) {
cout << 'السلسلة فارغة.' << endl ;
} آخر {
cout << 'السلسلة ليست فارغة.' << endl ;
}

يعود 0 ;
}

في مقتطف كود C++ هذا، نبدأ بتضمين ملفات الرأس الضرورية، مثل و، لتسهيل عمليات الإدخال والإخراج والعمل مع السلاسل، على التوالي. داخل الدالة 'main()'، نعلن عن متغير سلسلة يسمى 'emptyStr'. هذه السلسلة فارغة في البداية، بدون أي حرف. بعد ذلك، نستخدم وظيفة العضو 'فارغة ()' التي توفرها فئة 'السلسلة' C++. كما يوحي الاسم، تتحقق الدالة 'empty()' مما إذا كانت السلسلة التي يتم استدعاؤها عليها فارغة أم لا.



في حالتنا، نقوم باستدعاء هذه الدالة في السلسلة النصية 'emptyStr'. بعد ذلك، نستخدم عبارة شرطية لتقييم النتيجة المنطقية التي يتم إرجاعها بواسطة الدالة 'empty()'. إذا كانت السلسلة فارغة بالفعل، فسيقوم برنامجنا بإخراج رسالة تشير إلى أن السلسلة فارغة. من ناحية أخرى، إذا كانت السلسلة تحتوي على أحرف، يقوم البرنامج بإخراج رسالة تنص على أن السلسلة ليست فارغة.



إخراج كود C++ المقدم هو كما يلي:





الطريقة الثانية: استخدام وظيفة العضو Size()

هناك طريقة أخرى لاكتشاف ما إذا كانت سلسلة C++ فارغة تتضمن استخدام وظيفة العضو 'size()' التي توفرها فئة 'string'. على عكس الدالة 'empty()' التي تُرجع مباشرةً قيمة منطقية تشير إلى الفراغ، فإن الدالة 'size()' تُرجع عدد الأحرف الموجودة في السلسلة. للتحقق من الفراغ، نقارن نتيجة 'size()' بالصفر لأن السلسلة الفارغة حجمها صفر.



هنا مثال:

#تشمل
#تشمل <سلسلة>
استخدام مساحة الاسم الأمراض المنقولة جنسيا ;

كثافة العمليات رئيسي ( ) {

سلسلة myEmptyString ;

لو ( myEmptyString. مقاس ( ) == 0 ) {
cout << 'السلسلة المقدمة فارغة.' << endl ;
} آخر {
cout << 'السلسلة المقدمة ليست فارغة.' << endl ;
}

يعود 0 ;
}

في هذا المثال، نبدأ بالإعلان عن متغير سلسلة يسمى 'myEmptyString' دون تهيئته، مع تركه فارغًا افتراضيًا. للمضي قدمًا، نقوم باستدعاء الدالة 'size()' لتحديد حجم أو عدد الأحرف في سلسلة 'myEmptyString'. تقوم عبارة 'if' بتقييم ما إذا كان الحجم يساوي الصفر مما يشير إلى أن السلسلة فارغة. إذا تم استيفاء هذا الشرط، فإننا نخرج رسالة إلى وحدة التحكم تفيد بأن السلسلة المقدمة فارغة. على العكس من ذلك، إذا كان الحجم غير صفر، ينتقل تدفق التحكم إلى الكتلة 'آخر' ويتم عرض رسالة مختلفة تؤكد أن السلسلة المقدمة ليست فارغة.

الطريقة الثالثة: استخدام المقارنة مع سلسلة حرفية فارغة

تتضمن التقنية الإضافية لتحديد ما إذا كانت سلسلة C++ فارغة إجراء مقارنة مباشرة مع سلسلة حرفية فارغة. يتم تمثيل السلسلة الحرفية الفارغة بزوج من علامات الاقتباس المزدوجة مع عدم وجود أحرف بينها مثل ''. يمكننا التأكد مما إذا كانت السلسلة تحتوي على أي حرف من خلال مقارنة سلسلة معينة بهذه السلسلة الحرفية الفارغة.

فيما يلي مثال يوضح هذا النهج:

#تشمل
#تشمل <سلسلة>
استخدام مساحة الاسم الأمراض المنقولة جنسيا ;

كثافة العمليات رئيسي ( )
{
اسم مستخدم السلسلة ;

cout <> اسم المستخدم ;

لو ( اسم المستخدم == '' )
{
cout << 'خطأ: لا يمكن أن يكون اسم المستخدم فارغًا.' << endl ;
}
آخر
{
cout << 'مرحبًا، ' << اسم المستخدم << '! مرحبًا بك في منصتنا.' << endl ;
}

يعود 0 ;
}

في هذه الحالة، نقوم بتشغيل تطبيق يطلب من المستخدم تقديم اسم المستخدم الخاص به. يبدأ البرنامج بإعلان متغير سلسلة يسمى 'اسم المستخدم' لتخزين مدخلات المستخدم. بعد ذلك، تتم مطالبة المستخدم برسالة 'أدخل اسم المستخدم الخاص بك:'، ويتم التقاط مدخلاته باستخدام دفق 'cin'. يستخدم البرنامج بعد ذلك عبارة شرطية للتحقق مما إذا كان اسم المستخدم الذي تم إدخاله فارغًا، ويتم ذلك عن طريق مقارنته مباشرة بسلسلة حرفية فارغة باستخدام عامل المساواة (==). إذا وجد أن اسم المستخدم فارغًا، فسيقوم البرنامج بإخراج رسالة خطأ تنص على 'خطأ: لا يمكن أن يكون اسم المستخدم فارغًا'. ومع ذلك، إذا لم يكن اسم المستخدم فارغًا، فسيعرض البرنامج رسالة ترحيب مخصصة تتضمن اسم المستخدم الذي تم إدخاله مع التحية 'مرحبًا، [اسم المستخدم]! مرحبًا بك في منصتنا'.

هنا هو الإخراج حيث لم نقدم أي اسم مستخدم:

يكون الإخراج عند تقديم اسم مستخدم كما يلي:

الطريقة الرابعة: استخدام عامل التشغيل الثلاثي

يعبر المشغل الثلاثي بإيجاز عن عبارة شرطية في سطر واحد مما يجعل الكود أكثر إحكاما. يقوم العامل الثلاثي بإرجاع إحدى القيمتين بعد تقييم الحالة لمعرفة ما إذا كانت السلسلة فارغة. في هذه الحالة، يمكننا استخدام وظيفة العضو 'فارغة ()' للتحقق من الفراغ واستخدام عامل التشغيل الثلاثي لتعيين الرسالة المقابلة.

إليك مثال توضيحي:

#تشمل
#تشمل <سلسلة>
استخدام مساحة الاسم الأمراض المنقولة جنسيا ;

كثافة العمليات رئيسي ( ) {
عينة السلسلة = 'مرحبا بالعالم!' ;

cout << 'السلسلة هي' << ( SampleString. فارغ ( ) ؟ 'فارغ.' : 'ليست فارغة.' ) << endl ;

يعود 0 ;
}

نعلن بعد ذلك عن متغير سلسلة يسمى 'sampleString' ونقوم بتهيئته باستخدام العبارة 'Hello, World!' محتوى. نحن نستخدم عامل تشغيل ثلاثي ضمن عبارة 'cout' لتحديد ما إذا كانت السلسلة فارغة. يقوم عامل التشغيل الثلاثي بتقييم حالة 'sampleString.empty()'، والتحقق مما إذا كانت السلسلة فارغة، ويطبع الرسالة المقابلة 'السلسلة فارغة' إذا كان الشرط صحيحًا، و'السلسلة ليست فارغة' إذا كان الشرط خطأ شنيع. وينتهي البرنامج بإرجاع 0 مما يدل على التشغيل الناجح. تنفيذ هذا البرنامج يولد المخرجات التالية:

خاتمة

يعد اكتشاف ما إذا كانت سلسلة C++ فارغة أمرًا أساسيًا لمعالجة السلسلة ومعالجتها. في هذه المقالة، قمنا باستكشاف الطرق المتعددة، ولكل منها مميزاتها. وظيفة العضو 'empty()' هي الوظيفة الأكثر مباشرة والأكثر استخدامًا والتي تشير بوضوح إلى فراغ السلسلة. يوفر استخدام 'size()' طريقة بديلة عن طريق التحقق من طول السلسلة. تعتبر المقارنة مع سلسلة حرفية فارغة أمرًا مباشرًا وبديهيًا، بينما توفر عوامل التشغيل الثلاثية المرونة في دمج التحقق في منطق أكثر تعقيدًا. ويجب أن تؤخذ الاحتياجات الخاصة للبرنامج بعين الاعتبار عند اختيار النهج الصحيح.