C Function Declaration and Definition

در برنامهنویسی C، اعلام و تعریف توابع بخشهای اساسی در ساختار کد هستند و تعیین میکنند که توابع چگونه استفاده شوند. بیایید این دو مفهوم را توضیح دهیم:
1. اعلام تابع (Prototype)
اعلام تابع به کامپایلر اطلاع میدهد که تابعی با نام مشخص، نوع بازگشتی و پارامترهای مشخص وجود دارد، اما بدن تابع (پیادهسازی آن) را ارائه نمیدهد. این اعلام به کامپایلر میگوید که تابع در کد وجود دارد و میتواند قبل از تعریف تابع در کد فراخوانی شود.
نحو:
نوع_بازگشتی نام_تابع(لیست_پارامترها);
مثال:
int add(int, int); // اعلام تابع
در این مثال، add
تابعی است که دو پارامتر از نوع int
میگیرد و یک int
باز میگرداند.
2. تعریف تابع
تعریف تابع جایی است که تابع به طور کامل پیادهسازی میشود. در این بخش، بدنه تابع قرار دارد و مشخص میکند که هنگام فراخوانی تابع چه عملیاتی انجام میشود.
نحو:
نوع_بازگشتی نام_تابع(لیست_پارامترها) {
// بدنه تابع
// منطق و دستور return
}
مثال:
int add(int a, int b) { // تعریف تابع
return a + b;
}
در این مثال، تابع add
دو عدد صحیح را با هم جمع کرده و نتیجه را باز میگرداند.
ترکیب اعلام و تعریف
شما میتوانید تابع را در ابتدای کد (معمولاً در فایلهای هدر) اعلام کرده و سپس در بخشهای بعدی برنامه آن را تعریف کنید.
#include <stdio.h>
// اعلام تابع (Prototype)
int add(int, int);
int main() {
int result = add(5, 3); // فراخوانی تابع
printf(“The sum is: %d\n”, result);
return 0;
}
// تعریف تابع
int add(int a, int b) {
return a + b;
}
تفاوتهای کلیدی:
- اعلام: فقط امضا (نام، نوع بازگشتی، پارامترها) تابع را مشخص میکند، بدون پیادهسازی.
- تعریف: پیادهسازی کامل تابع را شامل میشود.
آیا این توضیحات برای شما کافی بود یا به مثالهای بیشتری نیاز دارید؟
دیدگاهتان را بنویسید