الانتقال إلى المحتوى الرئيسي

كيف يمكنني إنشاء مجموعة شار في ج? الدليل الكامل

  • الأستاذ عبد الجليل بلغازي
  • الأسئلة

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

تتمثل إحدى طرق إنشاء مصفوفة شار في تحديد حجمها بشكل صريح عند الإعلان عنها. على سبيل المثال ، يمكنك إنشاء صفيف شار مكون من 10 عناصر على النحو التالي:

شار مياراي [10];

يمكن أن تحتوي هذه المصفوفة على 10 أحرف ، بدءا من الفهرس 0 وتنتهي بالفهرس 9. يمكن ملء عناصر المصفوفة بالقيم باستخدام عامل التعيين. على سبيل المثال:

بالإضافة إلى ذلك ، يمكنك تهيئة صفيف شار عند الإعلان عنه. على سبيل المثال:

شار مياراي [] ="مرحبا";

في هذه الحالة ، يتم تحديد حجم المصفوفة تلقائيا ويساوي حجم السلسلة "مرحبا" ، بالإضافة إلى عنصر واحد لتخزين حرف النهاية الصفرية.

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

  1. الخطوة 1: تحديد صفيف شار
  2. الخطوة 2: تهيئة صفيف شار
  3. الخطوة 3: الوصول إلى عناصر مجموعة شار
  4. الخطوة 4: تغيير عناصر مجموعة شار
  5. الخطوة 5: العمل مع السلاسل في صفيف شار
  6. الخطوة 6: وظائف للعمل مع صفائف شار
  7. الخطوة 7: أمثلة على استخدام صفيف شار في ج
  8. سؤال وجواب
  9. كيف يمكنني إنشاء مجموعة شار فارغة في ج?
  10. كيف يمكنني تعيين حجم مجموعة شار في ج?
  11. كيف يمكنني ملء مجموعة شار في ج?

الخطوة 1: تحديد صفيف شار

صفيف شار (صفيف الأحرف) في لغة البرمجة ج هي بنية بيانات تتكون من سلسلة من الأحرف. وهو واحد من أنواع البيانات الأكثر استخداما في ج ، وغالبا ما يستخدم للعمل مع سلاسل من النص.

لتحديد مصفوفة شار في ج ، اتبع الخطوات التالية:

  1. تحديد اسم المصفوفة: اختر اسما يعكس جوهر البيانات المخزنة في المصفوفة. على سبيل المثال ، إذا كنت تريد إنشاء مصفوفة لتخزين أسماء المستخدمين ، فيمكنك اختيار الاسم "الأسماء".
  2. تحديد حجم المصفوفة: يشير حجم مصفوفة الحرف إلى عدد الأحرف التي يمكن تخزينها في المصفوفة. على سبيل المثال ، إذا كنت تريد إنشاء صفيف لتخزين 100 اسم مستخدم ، فيمكنك تحديد حجم صفيف يبلغ 100.
  3. يعني أن المصفوفة المسماة "الأسماء" لها حجم 100 حرف.

هنا هو مثال رمز يدل على تعريف مجموعة شار واستخدامه:

# تشمل // تمكين ملف الرأس من استخدام وظائف الإدخال / الإخراج
كثافة العمليات الرئيسية () {// نقطة الدخول إلى البرنامج ، الوظيفة الرئيسية
أسماء شار [100];// تحديد مصفوفة شار تسمى "أسماء" بحجم 100 حرف
برينتف ("أدخل اسما:");// عرض مطالبة الاسم على الشاشة
سكانف ("٪ق " ، أسماء);// قراءة الاسم الذي تم إدخاله من لوحة المفاتيح وحفظه في صفيف شار
برينتف ("مرحبا ، ٪ ق!"،الأسماء);// عرض شاشة تحية مع الاسم الذي تم إدخاله
العودة 0;// إرجاع صفر يشير إلى الانتهاء بنجاح من البرنامج
}// الانتهاء من الوظيفة الرئيسية

، حفظه في صفيف. أخيرا ، نعرض التحية على الشاشة باستخدام الاسم الذي تم إدخاله.

الخطوة 2: تهيئة صفيف شار

بعد تحديد صفيف شار في ج ، فإن الخطوة التالية هي تهيئته. تهيئة صفيف شار يعني تعيين القيم الأولية لعناصرها.

في ج ، هناك عدة طرق لتهيئة مصفوفة شار:

  1. تهيئة العناصر بشكل فردي:
الفهرسالعنصر
0'ح'
1'ه'
2'ل'
3'ل'
4'س'

مثال على تهيئة مصفوفة شار بشكل فردي:

شار مرحبا [5];

مرحبا [0] = 'ح';

مرحبا [1] = 'ه';

مرحبا [2] = 'ل';

مرحبا [3] = 'ل';

مرحبا [4] = 'س';

  1. تهيئة المصفوفة بأكملها بالقيم الافتراضية:

يمكن تهيئة جميع عناصر صفيف شار بقيمة افتراضية واحدة. على سبيل المثال ، إذا كنت بحاجة إلى تهيئة صفيف شار مع 5 عناصر مع القيمة '\ 0 ' (حرف فارغ) ، وهو حرف نهاية السطر ، يمكنك استخدام التعليمات البرمجية التالية:

شار مرحبا[5] = {'\0'};

  1. تهيئة المصفوفة بأكملها مع القيم بالترتيب:

يمكنك أيضا تهيئة صفيف شار مع القيم بالترتيب الذي تظهر في الصفيف. على سبيل المثال ، إذا كنت بحاجة إلى تهيئة صفيف شار مع 5 عناصر مع القيم 'ح' ، 'ه' ، 'ل' ،' ل ' ، ' س ' ، يمكنك استخدام التعليمات البرمجية التالية:

شار مرحبا [5] = {'ح' ، 'ه' ، 'ل' ، 'ل' ، 'س'};

عند تهيئة مجموعة من القيم شار ، تحتاج إلى التأكد من أن عدد القيم تهيئة يتوافق مع حجم الصفيف. خلاف ذلك ، قد يحدث تجاوز أو قراءة ذاكرة غير صحيحة.

الخطوة 3: الوصول إلى عناصر مجموعة شار

بعد إنشاء مصفوفة شار ، يمكننا الوصول إلى عناصرها الفردية باستخدام الفهارس. تبدأ فهرسة الصفيف من 0 ، حيث 0 هو فهرس العنصر الأول.

للوصول إلى عنصر من صفيف شار ، نحدد اسم الصفيف ، متبوعا بفهرس العنصر بين قوسين مربعين:

شار مياراي [] = {'ح' ، 'ه' ، 'ل' ، 'ل' ، 'س'};

برينتف ("٪ج "، مياراي [0]) ؛ / / إخراج الحرف "ح"

برينتف ("٪ج "، مياراي [2]) ؛ / / إخراج الحرف "ل"

يمكننا تغيير قيمة عنصر من صفيف شار عن طريق تعيين قيمة جديدة له:

شار مياراي [] = {'ح' ، 'ه' ، 'ل' ، 'ل' ، 'س'};

مياراي [0] = 'ي';

برينتف ("٪ج "، مياراي [0]) ؛ / / إخراج الحرف "ي"

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

شار مياراي [] = {'ح' ، 'ه' ، 'ل' ، 'ل' ، 'س'};

طول كثافة العمليات = حجم (مياراي) / حجم (شار);

ل (إنت أنا = 0 ؛ أنا < طول ؛ أنا i) {

برينتف ("٪ج " ، مياراي [أنا]);

}

// إخراج السلسلة "مرحبا"

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

الخطوة 4: تغيير عناصر صفيف شار

مجموعة شار في ج يسمح لك لتخزين وتغيير سلسلة من الأحرف. لتغيير عناصر صفيف شار ، ستحتاج إلى الوصول إلى عنصر معين من خلال فهرسه وتعيين قيمة جديدة.

هنا مثال يوضح كيفية تغيير عناصر صفيف شار:

# تشمل 

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

كلمة شار [] ="مرحبا";

برينتف ("سلسلة المصدر: ٪ س

"،كلمة);

// تغيير الحرف الأول

كلمة [0] = 'ح';

// تغيير الحرف الأخير

كلمة [4]='!';

برينتف ("سلسلة معدلة: ٪ س

"،كلمة);

العودة 0;

}

وتعيين القيمة'!’.

.

إخراج البرنامج:

خط المصدر: مرحبا

خط تعديل: مرحبا!

وهكذا ، يمكنك تعديل بحرية العناصر الفردية من مجموعة شار في ج لإنشاء وتعديل سلاسل كما يحلو لك.

الخطوة 5: العمل مع سلاسل في صفيف شار

مجموعة شار في ج يسمح لك للعمل مع البيانات الرمزية. واحدة من العمليات الأكثر شيوعا مع صفائف شار تعمل مع السلاسل. في هذا القسم ، سنلقي نظرة على العمليات الأساسية مع السلاسل في صفيف شار.

السلسلة في ج هي سلسلة من الأحرف تنتهي بالحرف الفارغ '\ 0'. يشير هذا الحرف الفارغ إلى نهاية السلسلة. لذلك ، لإنشاء واستخدام السلاسل في صفيف شار ، يجب أن تأخذ في الاعتبار وجود حرف فارغ في نهاية السلسلة.

هناك عدة طرق لتهيئة سلسلة في صفيف شار:

  1. عند الإعلان عن مصفوفة حرف وتهيئتها ، يمكنك تحديد سلسلة بعلامات اقتباس مزدوجة ، على سبيل المثال:

ستركبي (شارع ، " مرحبا ، العالم!");

  • لإجراء عمليات على سلاسل في صفيف شار ، يمكنك استخدام وظائف مختلفة من مكتبة سي القياسية ، مثل:
  • يتم استخدام وظيفة سترلين () للحصول على طول سلسلة.
  • يتم استخدام وظيفة ستركات () للجمع بين سلسلتين.
  • يتم استخدام وظيفة ستركمب () لمقارنة سلسلتين.

يتم استخدام وظيفة سترنكبي () لنسخ الأحرف ن الأولى من سلسلة واحدة إلى سلسلة أخرى.

فيما يلي أمثلة على استخدام هذه الوظائف:

// الحصول على طول السلسلة

شار ستري1 [] = " مرحبا, العالمية!";

إنت لين = سترلين (ستر 1);

برينتف ("طول السلسلة: ٪ د

"،لين);

// الجمع بين سلسلتين

شار ستري2[20] ="مرحبا";

شار ستر3 [] = " العالم!";

ستركات (ستري 2 ، ستري 3);

برينتف ("سلسلة مجتمعة: ٪ ق

"،ستري2);

// مقارنة سلسلتين

شار ستري4 [] ="مرحبا";

شار ستري5 [] = "العالم";

النتيجة الدولية = ستركمب (ستر 4 ، ستر 5);

إذا (النتيجة= = 0)

برينتف ("السلاسل متساوية

");

آخر إذا (النتيجة > 0 )

برينتف ("السطر 1 أكبر من السطر 2

");

آخر

برينتف ("السطر 1 أقل من السطر 2

");

// نسخ خط

شار ستري6 [20];

سترنكبي (ستر 6 ، ستر 4 ، 5);

6 [5] = '\ 0';

برينتف ("السلسلة المنسوخة: ٪ س

"،ستري6);

هذه هي العمليات الأساسية التي تسمح لك بالعمل مع السلاسل في صفيف شار. يمكن أن تكون مفيدة في تطوير البرامج التي تتطلب معالجة البيانات النصية.

شار

شار

  • سترلين
  • شار
  • ستركات
  • ستركمب
  • سترتشر
  • سترستر

: يجد أول ظهور لسلسلة فرعية في سلسلة.

أمثلة على استخدام هذه الوظائف:وظيفةالوصف
مثال على استخدامسترلينإرجاع طول السلسلة.
كثافة العمليات طول = سترلين (شارع);شارإلى واحد آخر.
شار ديست [50];
ستركبي(ديست، سرك);ستركاتيجمع بين سطرين.
شار ستري1 [50] ="مرحبا";
شار ستري2 [] = " العالم!";
ستركات (ستري1 ، ستري2);ستركمبيقارن سلسلتين.
النتيجة الدولية = ستركمب (ستري1 ، ستري2);سترتشريجد التكرار الأول لحرف في سلسلة.
شار شارع [] = " مرحبا, العالمية!";
شار * ع = سترتشر (ستر ، 'س');سترستريجد أول ظهور لسلسلة فرعية في سلسلة.
شار شارع [] = " مرحبا, العالمية!";

شار

في ج. مع مساعدتهم ، يمكنك تنفيذ عمليات مختلفة مع الأحرف والسلاسل ، مما يجعل البرمجة في ج أسهل بكثير وأكثر ملاءمة.

الخطوة 7: أمثلة على استخدام صفيف شار في ج

  1. برينتف ("خطوط تختلف");

}

في هذا المثال ، نقارن سلسلتين ، ستري1 و ستري2. إذا كانت السلاسل متطابقة ، فسيتم إخراج "السلاسل متطابقة". خلاف ذلك ، سيتم إخراج "الخطوط مختلفة".

نسخ سلسلة إلى صفيف شار آخر: