توابع در C

تعریف و فراخوانی توابع، پارامترها، مقدار بازگشتی و مزایای استفاده از توابع

تابع چیست؟

تابع یک بلوک کد قابل استفاده مجدد است که یک کار مشخص انجام می‌دهد. به‌جای نوشتن مکرر یک کد، آن را یک‌بار در تابع می‌نویسیم و هر جا لازم شد فراخوانی می‌کنیم.

مزایای توابع

تعریف تابع

returnType functionName(parameters) {
    // بدنه تابع
    return value;  // اگر returnType برابر void نباشد
}

مثال: تابع ساده

void myFunction() {
    printf("سلام از تابع!");
}

int main() {
    myFunction();  // فراخوانی تابع
    return 0;
}

تابع با پارامتر

void greet(char name[]) {
    printf("سلام %s!", name);
}

int main() {
    greet("علی");
    return 0;
}

تابع با مقدار بازگشتی

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

int main() {
    int result = add(5, 3);
    printf("%d", result);  // 8
    return 0;
}

تابع void

کلمه void یعنی تابع چیزی برنمی‌گرداند:

void printLine() {
    printf("--------------------");
}

تعریف تابع قبل از main

در C، تابع باید قبل از استفاده تعریف یا اعلان (declare) شده باشد. دو روش:

روش ۱: تعریف کامل قبل از main

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

int main() { ... }

روش ۲: اعلان (Prototype) قبل و تعریف بعد از main

int add(int a, int b);  // اعلان

int main() {
    printf("%d", add(2, 3));
    return 0;
}

int add(int a, int b) {  // تعریف
    return a + b;
}

نکات مهم

این مبحث بخشی از دوره آموزش کامل زبان C است.

ابزارهای مرتبط