تعريف الهياكل واستخدامها
تعلّموا تجميع المتغيرات المرتبطة في هيكل واستخدام struct في التطبيقات الواقعية
تعريف الهياكل واستخدامها درس مجاني في C Academy على CoddyKit. هذا هو الدرس 1 من أصل 3. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في C Academy، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة C Academy 3 دروس في المجموع.
تعريف البنى واستخدامها
تعريف البنى واستخدامها
تتيح لنا البنى (struct) تجميع المتغيرات المرتبطة تحت اسم واحد.
في هذا الدرس، ستتعلم:
- كيفية تعريف البنى واستخدامها.
- كيفية الوصول إلى أعضاء البنية.
- كيفية تمرير البنى إلى الدوال.

ما المقصود بالبنية؟
ما المقصود بالبنية؟
البنية هي نوع بيانات يعرّفه المستخدم ويجمع متغيرات مختلفة.
مثال على تعريف بنية:
struct Person {
char name[50];
int age;
float height;
};
هنا، تخزّن بنية Person الاسم والعمر والطول.
تعريف البنية وتهيئتها
تعريف البنية وتهيئتها
بعد تعريف البنية، يمكننا تعريفها وتهيئتها:
struct Person p1 = {"Alice", 25, 5.7};
يمكننا أيضًا إسناد القيم لاحقًا:
p1.age = 30;الوصول إلى أعضاء البنية
الوصول إلى أعضاء البنية
يتم الوصول إلى أعضاء البنية باستخدام معامل النقطة (.).
مثال:
printf("Name: %s\n", p1.name);
يطبع هذا الاسم المخزّن في البنية.
مثال: استخدام البنى
مثال: استخدام البنى
يوضح هذا البرنامج تعريف بنية وتهيئتها والوصول إلى أعضائها.
#include <stdio.h>
struct Person {
char name[50];
int age;
float height;
};
int main() {
struct Person p1 = {"Alice", 25, 5.7};
printf("Name: %s\n", p1.name);
printf("Age: %d\n", p1.age);
printf("Height: %.1f\n", p1.height);
return 0;
}المؤشرات إلى البنى
المؤشرات إلى البنى
يمكننا استخدام المؤشرات إلى البنى لإدارة الذاكرة بكفاءة.
مثال:
struct Person *ptr = &p1;
يتم الوصول إلى الأعضاء باستخدام معامل السهم (->):
printf("%s", ptr->name);مثال: مؤشرات البنى
مثال: مؤشرات البنى
يوضح هذا البرنامج الوصول إلى أعضاء البنية باستخدام المؤشرات.
#include <stdio.h>
struct Person {
char name[50];
int age;
};
int main() {
struct Person p1 = {"Bob", 30};
struct Person *ptr = &p1;
printf("Name: %s\n", ptr->name);
printf("Age: %d\n", ptr->age);
return 0;
}تمرير البنى إلى الدوال
تمرير البنى إلى الدوال
يمكن تمرير البنى إلى الدوال حسب القيمة أو حسب المرجع.
مثال (التمرير حسب المرجع):
void update(struct Person *p) {
p->age += 1;
}
يؤدي التمرير حسب المرجع إلى تجنب نسخ البنى الكبيرة.
الملخص
الملخص
في هذا الدرس، تعلمت:
- كيفية تعريف البنى واستخدامها.
- كيفية الوصول إلى أعضاء البنية.
- كيفية استخدام المؤشرات مع البنى.
بعد ذلك، سنستكشف الاتحادات وكفاءة الذاكرة في C!

الأسئلة الشائعة
هل درس «تعريف الهياكل واستخدامها» مجاني؟
نعم — نص درس «تعريف الهياكل واستخدامها» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة C Academy، انتقل إلى CoddyKit PRO. تتضمن دورة C Academy 3 دروس في المجموع.
ماذا ستتعلم في «تعريف الهياكل واستخدامها»؟
تعلّموا تجميع المتغيرات المرتبطة في هيكل واستخدام struct في التطبيقات الواقعية تتمرن على C Academy مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.
هل أحتاج إلى خبرة سابقة لأبدأ C Academy؟
لا تُشترط خبرة سابقة. C Academy على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 1 من أصل 3.
كم من الوقت يستغرق درس «تعريف الهياكل واستخدامها»؟
معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.
هل يمكنني كتابة وتشغيل أكواد في درس C Academy هذا؟
نعم. كل درس في C Academy يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.
جميع الدروس في هذه الدورة
- تعريف الهياكل واستخدامها
- الاتحادات وكفاءة الذاكرة
- التعدادات (enum)