"إذا أراد العامل أن يؤدي عمله بشكل جيد، فعليه أولاً أن يشحذ أدواته." - كونفوشيوس، "مختارات كونفوشيوس. لو لينجونج"
الصفحة الأمامية > برمجة > كيفية سلسلة سلسلة حرفية وحرف حرفية في C++؟

كيفية سلسلة سلسلة حرفية وحرف حرفية في C++؟

تم النشر بتاريخ 2024-11-03
تصفح:466

How to Concatenate String Literals and Character Literals in C  ?

سلسلة حرفية وحرف حرفية في لغة C

عند محاولة ربط سلسلة حرفية مع حرفية حرفية في لغة C، يمكن أن يحدث سلوك غير متوقع. على سبيل المثال:

string str = "ab"   'c';
cout 

ينتج هذا الرمز مخرجات غير متوقعة لأنه لم يتم تعريف عامل التشغيل " " للجمع بين سلسلة حرفية وحرف حرفية. بدلاً من ذلك، يعامل المترجم السلسلة الحرفية على أنها سلسلة نمط C (مؤشر const char)، ويضيف قيمة int التي تمت ترقيتها للحرف الحرفي إلى عنوان السلسلة الحرفية. يؤدي هذا إلى سلوك غير محدد.

لتجنب هذه المشكلة، قم بتحويل الحرف الحرفي بشكل صريح إلى سلسلة قبل التسلسل:

std::string str = std::string("ab")   'c';

بدلاً من ذلك، استخدم التسلسل لتحقيق النتيجة المرجوة:

std::string str = "ab";
str  = 'c';

في مقتطف الكود الثاني، يحتوي كائن السلسلة على عامل تشغيل " " محمّل بشكل زائد يقوم بتنفيذ التسلسل المقصود.

أحدث البرنامج التعليمي أكثر>

تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.

Copyright© 2022 湘ICP备2022001581号-3