সি ভাষায় ফাংশনগুলো আর্গুমেন্ট (প্যারামিটার) এবং রিটার্ন ভ্যালুের ভিত্তিতে চারটি ক্যাটাগরিতে ভাগ করা যায়।
চারটি টাইপ
| টাইপ | আর্গুমেন্ট নেয়? | রিটার্ন করে? | উদাহরণ সিনট্যাক্স |
|---|---|---|---|
| ১. No arg, No return | না | না | void func(void) |
| ২. No arg, Return | না | হ্যাঁ | int func(void) |
| ৩. Arg, No return | হ্যাঁ | না | void func(int x) |
| ৪. Arg, Return | হ্যাঁ | হ্যাঁ | int func(int x) |
উদাহরণ ১: কোনো আর্গুমেন্ট নেই, কোনো রিটার্ন নেই
#include <stdio.h>
void my_function() {
printf("This function takes no argument, and returns nothing.\n");
}
int main() {
my_function();
return 0;
}
আউটপুট
This function takes no argument, and returns nothing.
উদাহরণ ২: আর্গুমেন্ট নেই, কিন্তু রিটার্ন আছে
#include <stdio.h>
int my_function() {
printf("This function takes no argument, but returns 50\n");
return 50;
}
int main() {
int x = my_function();
printf("Returned Value: %d\n", x);
return 0;
}
আউটপুট
This function takes no argument, but returns 50
Returned Value: 50
উদাহরণ ৩: আর্গুমেন্ট есть, রিটার্ন নেই
#include <stdio.h>
void my_function(int x) {
printf("This function takes %d as argument, but returns nothing\n", x);
}
int main() {
int x = 10;
my_function(x);
return 0;
}
আউটপুট
This function takes 10 as argument, but returns nothing
উদাহরণ ৪: আর্গুমেন্ট আছে, রিটার্নও আছে
#include <stdio.h>
int my_function(int x) {
printf("This takes an argument, and returns its squared value\n");
return x * x;
}
int main() {
int x = 12, res;
res = my_function(x);
printf("Returned Value: %d\n", res);
return 0;
}
আউটপুট
This takes an argument, and returns its squared value
Returned Value: 144
সেরা অনুশীলন
- ফাংশন ডিক্লেয়ারেশনে
voidস্পষ্ট করুন:void func(void)বাint func(int) - রিটার্ন টাইপ
voidহলেreturn;বা কোনো রিটার্ন না লিখলেই চলে - রিটার্ন টাইপ নন-ভয়েড হলে সব পাথে
return value;থাকতে হবে