اعلان تابع (Function Declaration)
«اعلان تابع (Function Declaration)» یعنی معرفی اسم تابع، نوع بازگشت، و پارامترها. «تعریف تابع (Function Definition)» یعنی بدنه کد. مثل مدرسه؛ اول معرفی معلم، بعد شروع کلاس.
اعلان و تعریف؛ فرقشان چیست؟
اعلان، فقط قرارداد تابع است. تعریف، اجرای واقعی کد است.
void myFunction() {
printf("I just got executed!");
}
int main() {
myFunction();
return 0;
}
جدا کردن اعلان و تعریف
برای نظم بهتر، اعلان را بالا بگذار. تعریف را پایین بگذار.
void myFunction();
int main() {
myFunction();
return 0;
}
void myFunction() {
printf("I just got executed!");
}
نکته: لینک اعلان تابع را بوکمارک کن تا همیشه دمِ دست باشد.
اعلان با پارامتر و بازگشت
تابع می تواند ورودی بگیرد و خروجی بدهد. مثل ماشین حساب.
int myFunction(int x, int y) {
return x + y;
}
int main() {
int result = myFunction(5, 3);
printf("Result is = %d", result);
return 0;
}
حالا نسخه مرتب تر با اعلان جدا:
int myFunction(int x, int y);
int main() {
int result = myFunction(5, 3);
printf("Result is = %d", result);
return 0;
}
int myFunction(int x, int y) {
return x + y;
}
تابع ها همدیگر را صدا می زنند
اول اعلان کن، بعد هرکدام دیگری را صدا بزند.
void myFunction();
void myOtherFunction();
int main() {
myFunction();
return 0;
}
void myFunction() {
printf("Some text in myFunction\n");
myOtherFunction();
}
void myOtherFunction() {
printf("Hey! Some text in myOtherFunction\n");
}
گام های عملی
- نیاز تابع را مشخص کن؛ ورودی و خروجی.
- اعلان را بالای
main()بنویس. - تعریف را پایین تر کامل کن و تست بگیر.
نکته: برای مرور «حوزه»، صفحه حوزه متغیرها را ببین. برای ورودی ها، به پارامترهای تابع سر بزن. برای خود مفهوم تابع، صفحه توابع عالی است.
جمع بندی سریع
- اعلان = قرارداد تابع.
- تعریف = بدنه و اجرا.
- جدا کردنشان، کد را خواناتر می کند.
- اول اعلان، بعد فراخوانی.
- پارامتر و بازگشت را شفاف بنویس.