এক ফাংশন হল একটি স্বায়त्त ব্লক যা একটি নির্দিষ্ট ভালো-ডিফাইনড টাস্ক সম্পন্ন করে।
ফাংশনের প্রকারভেদ
ফাংশন বড়ই দুটি টাইপে ভাগ করা যায়:
- পূর্বনির্ধারিত ফাংশন (Predefined functions)
- ইউজার-ডিফাইনড ফাংশন (User defined functions)
ফাংশন들 মধ্যে যোগাযোগ
ফাংশনগুলো আর্গুমেন্ট এবং রিটার্ন ভ্যালু ব্যবহার করে একে অপরের সাথে যোগাযোগ করে।
'C' ফাংশনের ফরম্যাট রিটার্ন-ডেটা-টাইপ ফাংশন নেম (আর্গুমেন্ট লিস্ট) নিচের মতো:
{ local variable declarations; executable statements(s); return (expression); }
উদাহরণস্বরূপ, void mul (int x, int y).
{ int p; p=x*y; printf("product = %d",p); }
প্রোটোটাইপ ফাংশন
এই ফাংশন দুটি পদ্ধতিতে করা যায়:
আর্গুমেন্ট টাইপসহ ফাংশন ডিক্লেরেশনের একটি কপি তৈরি করুন, প্রতিটির জন্য আইডেন্টিফায়ার থাকে বা নাও থাকতে পারে।
উদাহরণস্বরূপ:
int func(int, float, unsigned [2]); int func(int i, float f, unsigned u[2]);
ফাংশন ডেফিনিশন প্রোটোটাইপ ফরম্যাটে লিখেও প্রোটোটাইপ করা যায়।
উদাহরণস্বরূপ:
int func(int i, float f, unsigned u[2]){ < code for func > }
ফাংশন প্রোটোটাইপের ব্যবহার
এক বা একাধিক ইনকম্প্যাটিবল টাইপের আর্গুমেন্টসহ একটি প্রোটোটাইপড ফাংশন কল করা।
একই ফাংশনের জন্য এক্সপ্লিসিট বা ইমপ্লিসিট ডিক্লেরেশন مواجهা হলে। কম্পাইলার ডুপ্লিকেট ডিক্লেরেশনগুলো ध्यानপূর্বক পরীক্ষা করে এবং ইনকনসিস্টেন্সি ধরে।