ما هو الـ Struct؟
جزء من قسم Logic & Flow في رحلة C على Coddy — الدرس 38 من 63.
حتى الآن، كنت تعمل مع أنواع البيانات المدمجة في لغة C مثل int، و float، و char. ولكن ماذا لو كنت بحاجة إلى تجميع المعلومات ذات الصلة معاً؟ هنا تبرز أهمية الهياكل، أو structs، وتصبح ذات قيمة لا تقدر بثمن.
الـ struct هو نوع بيانات من تعريف المستخدم يتيح لك دمج متغيرات متعددة من أنواع مختلفة تحت اسم واحد. فكر فيه كحاوية تجمع قطع المعلومات ذات الصلة معاً.
فكر في نظام لسجلات الطلاب. بدلاً من إدارة متغيرات منفصلة لكل معلومة من معلومات الطالب، يمكنك تجميعها معاً:
// بدلاً من المتغيرات المنفصلة:
char student_name[50];
int student_id;
float student_grade;
// يمكنك تجميعها في struct:
struct Student {
char name[50];
int id;
float grade;
};هذا النهج يجعل الكود الخاص بك أكثر تنظيماً وأسهل في الفهم. عندما ترى struct Student، ستعرف على الفور أنه يحتوي على جميع المعلومات الأساسية حول الطالب. تعد الهياكل (Structures) لبنات بناء أساسية تساعدك على نمذجة كيانات من العالم الحقيقي في برامجك، مما يجعل الكود الخاص بك أكثر منطقية وقابلية للصيانة.
ورقة مرجعية
تُعد الـ struct نوع بيانات يحدده المستخدم يجمع متغيرات متعددة من أنواع مختلفة تحت اسم واحد:
struct Student {
char name[50];
int id;
float grade;
};تساعد الهياكل (Structures) في تنظيم البيانات ذات الصلة معاً، مما يجعل الكود أكثر منطقية وأسهل في الصيانة مقارنة باستخدام متغيرات منفصلة.
جرّب بنفسك
لا يتضمّن هذا الدرس تحدّيًا برمجيًا.
يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
جميع دروس Logic & Flow
1أساسيات المؤشرات
ما هو المؤشر؟الإعلان عن المؤشراتعامل العنوان (&)عامل إلغاء المرجعية (*)مؤشرات NULLمراجعة: أساسيات المؤشرات4مشروع: أداة نصوص بسيطة
نظرة عامة على المشروععد الأحرف7الهياكل (structs)
ما هو الـ Struct؟الإعلان عن Structإنشاء متغيرات Structالوصول إلى أعضاء الـ Structتهيئة الـ Structsمراجعة: Struct بيانات الطالب2المؤشرات والمصفوفات
أسماء المصفوفات كمؤشراتعناصر المصفوفة - المؤشراتالعمليات الحسابية على المؤشراتمقارنة المؤشراتمراجعة: التنقل في المصفوفة باستخدام المؤشرات5المؤشرات والدوال
التمرير بالقيمةتمرير المؤشرات إلى الدوالتعديل المتغيرات عبر المؤشراتمثال كلاسيكي: التبديلتمرير المصفوفات إلى الدوالملخص: وسائط المؤشرات في الدوال8الهياكل والمؤشرات
المؤشرات إلى الهياكلعامل السهم (->)تمرير الهياكل بالقيمةتمرير مؤشرات الهياكلالتخصيص الديناميكي للهياكلمراجعة: تعديل الهياكل باستخدام المؤشرات11تحديات المراجعة النهائية
مراجعة: دمج السلاسل النصية الديناميكيمراجعة: مصفوفة من الـ Structsمراجعة: عداد تكرار الكلمات3مصفوفات الأحرف والسلاسل النصية
السلاسل النصية كمصفوفات charالمُنهي الصفري (Null Terminator)إدخال السلاسل النصية باستخدام scanfاستخدام strlen()استخدام strcpy()استخدام strcat()استخدام strcmp()مراجعة: دوال السلاسل النصية الأساسية