يتم استخدام نوع بيانات شار (اختصار لـ "الحرف") في البرمجة لتخزين الأحرف. شار في لغة البرمجة ج هو عدد صحيح موقعة 16 بت ويمكن أن تحتوي على أي حرف من أحرف يونيكود.
يتم الإعلان عن الحرف باستخدام الكلمة الأساسية" الحرف " ويمكن تهيئته إما بحرف واحد في علامات اقتباس مفردة ، أو بقيمة عدد صحيح تتوافق مع رمز الحرف في جدول يونيكود. على سبيل المثال ، السطر التالي من التعليمات البرمجية يعلن متغير" حرف "من نوع شار وتهيئته مع الحرف "أ":
حرف شار = 'أ';
يمكن أن يمثل الحرف أيضا أحرف التحكم مثل السطر
فواصل "أو علامات التبويب "\ ر'. يمكن استخدام أحرف التنسيق الخاصة مثل "٪ ج" (للطباعة) أو "٪ ج" (للمسح الضوئي) لإخراج حرف الحرف.
بالإضافة إلى ذلك ، يمكن استخدام الحرف لتمثيل سلاسل أو صفائف من الأحرف. في هذه الحالة ، يتم تخزين الأحرف في السلسلة بالتتابع في الذاكرة ، ويتم إضافة الحرف الفارغ '\0 ' إلى نهاية السلسلة. على سبيل المثال ، تعلن التعليمة البرمجية التالية السلسلة "مرحبا" ويطبع أحرفها:
- كيفية استخدام شار جديد في ج
- نوع شار في ج والغرض منه
- إنشاء متغير نوع شار
- تعيين قيمة لمتغير نوع شار
- تحويل الأنواع باستخدام شار جديد إلى ج
- العمليات مع متغير من نوع شار
- أمثلة على استخدام شار جديد في ج
- مثال 1: تخصيص الذاكرة لحرف واحد
- مثال 2: تخصيص الذاكرة لسلسلة من الأحرف
- المثال 3: تخصيص الذاكرة لمجموعة ثنائية الأبعاد من الأحرف
- مثال 4: تحرير الذاكرة المخصصة
- المشاكل والحلول عند استخدام شار جديد في ج
- 1. تسرب الذاكرة
- 2. الاستخدام غير الصحيح للمشغل الجديد
- 3. وصول غير صحيح إلى الذاكرة المخصصة
- 4. إدارة عمر الذاكرة المخصصة
- سؤال وجواب
- ما هو شار الجديد في ج?
- كيفية استخدام شار جديد في ج?
- هل من الممكن استخدام شار جديد لإنشاء مجموعة من الشخصيات?
- كيف يمكنني تحرير الذاكرة المخصصة باستخدام شار جديد?
كيفية استخدام شار جديد في ج
الكلمة الجديدة في ج يسمح لك بتخصيص ذاكرة لتخزين المتغيرات من أنواع مختلفة. عند استخدام حرف جديد ، نقوم بتخصيص الذاكرة لتخزين الأحرف.
لإنشاء حرف جديد باستخدام حرف جديد ، يجب تحديد قيمته في علامات اقتباس مفردة. على سبيل المثال:
شار * رمز = شار جديد ('أ');
في هذه الحالة ، سيتم تخزين قيمة الرمز 'أ' في متغير الرمز.
يمكننا أيضا تخصيص الذاكرة لتخزين مجموعة من الأحرف باستخدام شار جديد []. على سبيل المثال:
شار * الجملة = شار جديد [10];
في هذه الحالة ، نخصص الذاكرة لتخزين 10 أحرف.
لتحرير الذاكرة التي تشغلها الأحرف المخصصة باستخدام حرف جديد أو حرف جديد [] ، يجب عليك استخدام عامل الحذف أو الحذف [] ، على التوالي. على سبيل المثال:
حذف الرمز;
تحذف [] الجملة;
من المهم أن تتذكر أنه بعد تحرير الذاكرة باستخدام عامل الحذف أو الحذف [] ، لم تعد متغيرات نوع الأحرف تحتوي على قيم.
باستخدام شار جديد في ج يسمح لك بتخصيص الذاكرة بشكل حيوي للأحرف ومصفوفات الأحرف ، مما يوفر قدرا أكبر من المرونة والكفاءة عند العمل مع بيانات الأحرف.
نوع شار في ج والغرض منه
ال شار نوع البيانات (من الإنجليزية حرف — حرف) هو نوع عدد صحيح أحادي البايت في ج لغة البرمجة. وهي قيمة 16 بت التي يمكن تخزين حرف واحد من مجموعة يونيكود.
الغرض الرئيسي من نوع شار في ج يرتبط بالعمل مع السلاسل والشخصيات. يتم استخدامه لتخزين الأحرف الفردية ومعالجتها ، وكذلك لإنشاء صفائف من الأحرف والسلاسل.
نوع شار يمكن استخدامها لتخزين وتمثيل أي حرف من جدول يونيكود ، بما في ذلك الحروف والأرقام وعلامات الترقيم ، والأحرف الخاصة.
فيما يلي بعض الأمثلة على استخدام نوع شار في ج:
سلسلة شار 2 [] = {'ث' ، ' س ' ، 'ص' ، 'ل' ، 'د' ، '\ 0'};
استخدام نوع شار للعمل مع وظائف السلسلة:
شار ستري1 [] ="مرحبا";
شار ستري2 [] = "العالم";
ستركات (ستر 1 ، ستر 2) ؛ / / الجمع بين السلاسل
نوع شار في ج هو أحد أنواع البيانات الرئيسية ويستخدم في كل مكان للعمل مع الأحرف والسلاسل في البرمجة.
إنشاء متغير نوع شار
متغير شار في لغة البرمجة سي هو نوع بيانات خاص مصمم لتخزين حرف واحد. يمكن أن تكون الرموز أحرفا من الأبجدية ، بالإضافة إلى رموز أخرى ، مثل الأرقام أو علامات الترقيم أو الأحرف الخاصة.
إنشاء متغير نوع شار بسيط جدا. للقيام بذلك ، حدد الكلمة الأساسية شار وحدد اسم المتغير:
شار ج ؛ / / إنشاء متغير من النوع ج شار
بعد إنشاء متغير من نوع شار ، فإنه يمكن تهيئة مع قيمة الرمز. على سبيل المثال:
شار فيرستليتر = 'أ' ؛ / / تهيئة متغير فيرستليتر مع قيمة الحرف 'أ'
في هذا المثال ، سيحتوي متغير الرسالة الأولى على الحرف 'أ'. لاحظ أن الأحرف محاطة بعلامات اقتباس مفردة.
يمكن أيضا استخدام متغير شار لتخزين القيم الرقمية التي تتوافق مع رموز الأحرف أسي. على سبيل المثال:
رقم الحرف = 65 ؛ / / تهيئة متغير الرقم بالقيمة الرقمية 65
في هذا المثال ، سيحتوي المتغير الرقمي على الحرف 'أ' ، نظرا لأن رمز أسي للحرف ' أ ' هو 65.
بالإضافة إلى ذلك ، يمكن استخدام متغير شار للعمل مع سلاسل الأحرف. في هذه الحالة ، يمكنه تخزين عنوان الحرف الأول في السلسلة. سننظر في هذه الوظيفة بمزيد من التفصيل في مقالات أخرى.
وبالتالي ، فإن متغير شار هو أداة مهمة للعمل مع الرموز في لغة البرمجة سي. يمكن استخدامه لتخزين حرف واحد أو القيمة الرقمية للحرف أو عنوان سلسلة الأحرف.
تعيين قيمة لمتغير نوع شار
متغير من نوع شار في لغة البرمجة ج يستخدم لتخزين الأحرف. يمكن أن تكون الأحرف عبارة عن أحرف وأرقام وعلامات ترقيم وأحرف خاصة أخرى.
تستخدم علامات الاقتباس المفردة ( '' ) لتعيين قيمة لمتغير من نوع الحرف. يشار إلى الحرف المراد تعيينه للمتغير داخل علامات الاقتباس. مثال:
شار ميشار = 'أ';
في هذا المثال ، يحصل متغير ميشار على قيمة الحرف 'أ'.
أيضا ، لتعيين قيمة لمتغير من نوع شار ، يمكنك استخدام قيمة رقمية يتوافق مع رمز أسي من الحرف. على سبيل المثال:
شار ميشار = 65;
- في هذا المثال ، يتلقى متغير ميشار الحرف 'أ' ، لأن رمز أسي للحرف ' أ ' هو 65.
- لعرض قيمة متغير شار على الشاشة ، يتم استخدام تنسيقات ٪سي الخاصة عند استخدام وظائف برينتف أو سكانف. مثال:
- "،ميشار);
- تحويل الأنواع باستخدام شار جديد إلى ج
يتم استخدام مشغل شار الجديد لتخصيص الذاكرة لمجموعة من الأحرف. يقوم بإرجاع مؤشر إلى العنصر الأول من هذه المصفوفة. وهكذا ، فإن المشغل شار جديد يسمح لك لخلق مجموعة ديناميكية من نوع شار.
مثال على استخدام مشغل شار الجديد:
شار * شارع = شار جديد [10];
وتجدر الإشارة أيضا إلى أنه عند استخدام عامل التشغيل شار الجديد لإنشاء مجموعة من الأحرف ، يتم تخصيص كتلة من الذاكرة التي يمكن استخدامها لتخزين الأحرف أو النص أو السلاسل. ومع ذلك ، فإن استخدام مشغل شار الجديد دون داع يمكن أن يؤدي إلى استخدام الذاكرة غير الضرورية وتعقيد البرنامج ، لذلك يجب استخدامه فقط عند الضرورة.
العمليات مع متغير من نوع شار
متغير من نوع شار في لغة البرمجة ج هو رمز. يتم تضمين الأحرف في علامات اقتباس مفردة ، مثل' أ 'أو' ب 'أو'$'.
هناك العديد من العمليات المفيدة التي يمكن إجراؤها باستخدام متغير من النوع شار:
التعيين: يمكنك تعيين قيمة حرف لمتغير نوع الحرف باستخدام عامل التعيين (=). على سبيل المثال,
كثافة العمليات النتيجة = ' أ ' + 1;
عمليات المقارنة: يمكنك مقارنة الأحرف باستخدام عوامل المقارنة ( = = ,!=, , =). على سبيل المثال,
إذا (ميشار = = 'أ')
التحول: في ج ، يمكنك تحويل الأحرف بشكل صريح إلى أرقام والعكس صحيح باستخدام عوامل التحويل. على سبيل المثال,
إنت مينت = (إنت) ميشار;
أو
شار ميشار = (شار) 65;
لاحظ أن الأحرف في اللغة ج يتم تخزينها في الذاكرة كقيم رقمية تتوافق مع جدول أسي أو يونيكود.
العمليات مع متغير نوع شار أساسية للعمل مع السلاسل والأحرف في لغة ج. سيساعدك فهمها على العمل بفعالية مع البيانات النصية في برامجك.
أمثلة على استخدام شار جديد في ج
في ال لغة البرمجة ج ، يتم استخدامه لتخصيص الذاكرة الديناميكية وتهيئة متغير رمزي. ستوضح الأمثلة التالية طرقا مختلفة لاستخدام المشغل
شار جديد
.
مثال 1: تخصيص الذاكرة لحرف واحد
لتخصيص الذاكرة لحرف واحد ، يمكنك استخدام التعليمات البرمجية التالية:
شار * رمز = شار جديد;
* الرمز = 'أ';
في هذا المثال ، ونحن تخصيص الذاكرة لرمز واحد ، تعيين القيمة' أ ' وتخزين مؤشر إلى هذه الذاكرة في
مثال 2: تخصيص الذاكرة لسلسلة من الأحرف
لتخصيص الذاكرة لسلسلة من الأحرف ، يمكنك استخدام التعليمات البرمجية التالية:
شارع [3] = 'ل';
شارع [4] = 'س';
شارع[5] = '\0'; // الحرف الفارغ المنتهي الذي يشير إلى نهاية السلسلة
في هذا المثال ، ونحن تخصيص الذاكرة لمجموعة من 6 أحرف ، وملء مع القيم 'ح' ، 'ه' ، 'ل' ،' ل ' ، ' س ' وإضافة حرف زائدة فارغة للإشارة إلى نهاية السلسلة. يتم تخزين المؤشر إلى هذه الذاكرة في
متغير شارع
.
مثال 3: تخصيص الذاكرة لمجموعة ثنائية الأبعاد من الأحرف
.
شار جديد
، يجب أن يتم تحريرها باستخدام
مشغل الحذف
. يوجد أدناه مثال على تحرير الذاكرة لكل من الأمثلة السابقة:
حذف الرمز;
حذف [] شارع;
ل (إنت أنا = 0 ؛ أنا < الصفوف ؛ أنا i) {
تحذف [] المصفوفة [ط];
}
حذف [] مصفوفة;
في هذا المثال ، نحرر الذاكرة من أجل
متغير الرمز
,
صفيف شارع
، والصفيف ثنائي الأبعاد
مصفوفة
عنصر بعنصر. بعد تحرير الذاكرة ، يجب تعيين المؤشرات المقابلة على
نولبتر
.
هذه مجرد أمثلة قليلة على استخدام المشغل
شار جديد
في لغة البرمجة ج. يسمح لك بإدارة الذاكرة بشكل أكثر مرونة وإنشاء هياكل بيانات ديناميكية ، بالإضافة إلى معالجة البيانات الرمزية ومعالجتها.
المشاكل والحلول عند استخدام شار جديد في ج
يتم استخدام وظيفة شار الجديدة في ج لتخصيص الذاكرة لمجموعة من الأحرف. ومع ذلك ، إذا تم استخدامه بشكل غير صحيح ، فقد يؤدي إلى عدد من المشكلات. دعونا نلقي نظرة على بعض المشاكل الرئيسية ، وكذلك طرق حلها.
1. تسرب الذاكرة
واحدة من أكثر المشاكل شيوعا عند استخدام شار جديد هو تسرب الذاكرة. إذا لم يتم تحرير هذه الذاكرة باستخدام عامل حذف [] بعد تخصيص الذاكرة لمصفوفة أحرف ، فستظل مشغولة ولن تكون متاحة لأغراض أخرى.
لتجنب تسرب الذاكرة ، من الضروري دائما تحرير الذاكرة المخصصة باستخدام عامل الحذف []. على سبيل المثال:
شار * شارع = شار جديد [10];
// باستخدام
حذف [] صفيف الأحرف شارع;
2. الاستخدام غير الصحيح للمشغل الجديد
قد تكون مشكلة أخرى هي الاستخدام غير الصحيح للمشغل الجديد. على سبيل المثال ، إشارة غير صحيحة لحجم المصفوفة أو عدم وجود فحص لتخصيص الذاكرة بنجاح.
لتجنب الأخطاء ، من الضروري تحديد حجم المصفوفة بشكل صحيح ، وكذلك التحقق من نجاح تخصيص الذاكرة. على سبيل المثال:
حجم كونست إنت = 10;
شار * شارع = جديد (الأمراض المنقولة جنسيا:: نوثرو) شار [حجم];
إذا (شارع = = نولبتر) {
// معالجة خطأ تخصيص الذاكرة
} آخر {
// باستخدام مجموعة الأحرف