The Code Fix

🇨 شرح لغة C

الدوال والمؤشّرات

الدوال

#include <stdio.h>

int add(int a, int b) {
    return a + b;
}

int main() {
    printf("%d", add(4, 6));   // 10
    return 0;
}

المؤشّرات (Pointers)

أهم مفهوم في C — متغيّر يخزّن عنوان متغيّر آخر:

int age = 25;
int *ptr = &age;

printf("%d\n", *ptr);   // 25  (القيمة)
printf("%p\n", ptr);    // العنوان
  • &age = عنوان المتغيّر.
  • *ptr = القيمة في ذلك العنوان.

التمرير بالمؤشّر

لتعديل متغيّر داخل دالة:

void increment(int *x) {
    (*x)++;
}

int main() {
    int n = 5;
    increment(&n);
    printf("%d", n);   // 6
}

إدارة الذاكرة الديناميكية

#include <stdlib.h>

int *arr = malloc(5 * sizeof(int));  // حجز ذاكرة
// ... استخدام ...
free(arr);   // تحرير الذاكرة

⚠️ في C تدير الذاكرة يدويًا. كل malloc يحتاج free، وإلا حدث تسرّب للذاكرة (memory leak).

🎉 أكملت أساسيات لغة C! فهمك للمؤشّرات والذاكرة سيجعلك مبرمجًا أقوى في أي لغة. اختبر نفسك واحصل على شهادتك.