মূল পার্থক্য - C এ ফাংশন প্রোটোটাইপ বনাম ফাংশন সংজ্ঞা
একটি ফাংশন একটি নির্দিষ্ট কাজ সম্পাদন করতে ব্যবহৃত বিবৃতির একটি গ্রুপ। সি প্রোগ্রামিং এ, মেইন () থেকে এক্সিকিউশন শুরু হয়। এটি একটি ফাংশন. একই প্রোগ্রামে সমস্ত বিবৃতি লেখার পরিবর্তে, এটি একাধিক ফাংশনে বিভক্ত করা যেতে পারে। প্রতিটি ফাংশন বিভিন্ন কার্যকারিতা সম্পাদন করবে। ফাংশন প্রোটোটাইপ কম্পাইলারকে ফাংশনের নাম, রিটার্ন প্রকার এবং প্যারামিটার সম্পর্কে বলে। এটি একটি ফাংশন ঘোষণা হিসাবেও পরিচিত। প্রতিটি ফাংশন এটি সনাক্ত করার জন্য একটি নির্দিষ্ট নাম আছে। ফাংশন স্টেটমেন্ট এক জোড়া কোঁকড়া ধনুর্বন্ধনী ভিতরে লেখা হয়.ফাংশন একটি মান ফেরত দিতে পারে. কিছু ফাংশন আছে যেগুলো কোনো মান ফেরত দেয় না। ডেটা প্যারামিটার তালিকা ব্যবহার করে ফাংশনে প্রেরণ করা হয়। ফাংশনের সংজ্ঞায় ফাংশন দ্বারা সম্পাদিত প্রকৃত কার্যকারিতা রয়েছে। সি প্রোগ্রামিং এ, ফাংশন প্রোটোটাইপ এবং ফাংশন সংজ্ঞা আছে। ফাংশন প্রোটোটাইপ এবং ফাংশন সংজ্ঞার মধ্যে মূল পার্থক্য হল যে ফাংশন প্রোটোটাইপ শুধুমাত্র ফাংশনের ঘোষণা ধারণ করে যখন ফাংশনের সংজ্ঞাটি ফাংশনের প্রকৃত বাস্তবায়ন ধারণ করে। ফাংশনের সংজ্ঞায় স্থানীয় ভেরিয়েবল এবং বিবৃতি রয়েছে যা নির্ধারণ করে যে ফাংশনটি কী করে।
C-তে ফাংশন প্রোটোটাইপ কী?
ফাংশন প্রোটোটাইপ ফাংশন ঘোষণা প্রদান করে। এটি ফাংশনের নাম, রিটার্ন প্রকার, প্যারামিটার উল্লেখ করে। রিটার্ন টাইপ হল ডেটা টাইপ যা ফাংশন থেকে রিটার্ন করে। যখন একটি ফাংশন একটি পূর্ণসংখ্যা প্রদান করে, তখন রিটার্ন টাইপটি int হয়। যখন একটি ফাংশন একটি ফ্লোট মান প্রদান করে, তখন রিটার্ন টাইপটি একটি ফ্লোট।যদি ফাংশনটি কোনো মান প্রদান না করে তবে এটি একটি অকার্যকর ফাংশন। এটি সনাক্ত করতে ফাংশনের নাম ব্যবহার করা হয়। সি কীওয়ার্ড ফাংশনের নাম হিসাবে ব্যবহার করা যাবে না। ডেটা প্যারামিটার ব্যবহার করে ফাংশনে প্রেরণ করা হয়। ফাংশন প্রোটোটাইপ ফাংশনের বাস্তব বাস্তবায়ন ধারণ করে না। ফাংশন প্রোটোটাইপ নিম্নলিখিত সিনট্যাক্স আছে.
(প্যারামিটার তালিকা);
যদি সর্বাধিক দুটি সংখ্যা গণনা করার জন্য একটি ফাংশন থাকে তবে ঘোষণাটি int max (int num1, int num2) হিসাবে লেখা যেতে পারে; সর্বাধিক মান num1 এবং num2 এ পাওয়া উচিত। যারা পূর্ণসংখ্যা, এবং তারা ফাংশন পাস করা হয়. রিটার্ন টাইপ, শুরুতে, এছাড়াও int হয়. সুতরাং, ফাংশন একটি পূর্ণসংখ্যা মান প্রদান করে। ফাংশন প্রোটোটাইপে প্যারামিটারের নাম লেখার প্রয়োজন নেই। কিন্তু ডাটা টাইপ লিখতে হবে। অতএব, int max (int, int); এছাড়াও একটি বৈধ ফাংশন প্রোটোটাইপ. যদি num1, num2, num3 হিসাবে দুটি পূর্ণসংখ্যা থাকে এবং প্রোটোটাইপটি int max(int num1, int num2, num3) হিসাবে লেখা হয়; এটা অবৈধ।num1, num2-এর ডেটা টাইপ আছে, কিন্তু num3-এর কোনও ডেটা টাইপ নেই। অতএব, এটি অবৈধ৷
নিচের প্রোগ্রামটি পড়ুন।
অন্তর্ভুক্ত
int CarMax(int x, int y);
int main(){
int p=10;
int q=20;
int উত্তর;
উত্তর=ক্যালম্যাক্স(p, q);
printf(“সর্বোচ্চ মান হল %d\n”, উত্তর);
রিটার্ন 0;
}
int calMax(int p, int q){
ইন্ট মান;
if(p>q) {
মান=পি;
}
অন্য {
মান=q;
}
রিটার্ন মান;
}
উপরের মতে, দ্বিতীয় বিবৃতিটি ফাংশন প্রোটোটাইপ দেখায়। এর বাস্তবায়ন নেই। মূল কর্মসূচির পরেই প্রকৃত বাস্তবায়ন। একটি সোর্স ফাইলে একটি ফাংশন সংজ্ঞায়িত করার সময় ফাংশন প্রোটোটাইপগুলি আরও উপযোগী হয় এবং সেই ফাংশনটিকে অন্য ফাইলে কল করে।
C-তে ফাংশনের সংজ্ঞা কী?
ফাংশনের সংজ্ঞাটিতে ফাংশনের প্রকৃত বাস্তবায়ন রয়েছে। এতে ফাংশনটি কী করা উচিত তা রয়েছে। যখন প্রোগ্রামটি ফাংশনটি কল করে, তখন কন্ট্রোলটি কল ফাংশনে স্থানান্তরিত হয়। ফাংশনটি কার্যকর করার পরে, নিয়ন্ত্রণটি মূল ফাংশনে ফিরে আসে। প্রয়োজনীয় তথ্য একটি প্যারামিটার তালিকা হিসাবে ফাংশন পাস করা হয়. যদি একটি ভ্যালু রিটার্নিং থাকে, তাহলে রিটার্নের ধরন উল্লেখ করা হয়। যদি কোন রিটার্নিং মান না থাকে, তাহলে রিটার্নের ধরনটি অকার্যকর। একটি ত্রিভুজের ক্ষেত্রফল নির্ণয় করতে নিচের ফাংশনটি পড়ুন।
অন্তর্ভুক্ত
float calArea(int x, int y);
int প্রধান () {
int p=10;
int q=20;
ফ্লোট এলাকা;
এরিয়া=ক্যালএরিয়া(p, q);
printf ("সর্বোচ্চ মান হল %f\n", এলাকা);
রিটার্ন 0;
}
float calArea (int x, int y) {
ফ্লোট মান;
মান=০.৫xy;
রিটার্ন মান;
}
উপরের প্রোগ্রাম অনুসারে, দ্বিতীয় বিবৃতিটি ফাংশন প্রোটোটাইপ নির্দেশ করে। ফাংশনটি যা সম্পাদন করে তার প্রকৃত বাস্তবায়ন মূল প্রোগ্রামের পরে লেখা হয়। এটি ফাংশনের সংজ্ঞা। p এবং q মানগুলি calArea ফাংশনে প্রেরণ করা হয়। পরিবর্তনশীল মান হল calArea ফাংশনের একটি স্থানীয় পরিবর্তনশীল। এলাকাটি গণনা করা হয় এবং পরিবর্তনশীল মানের সাথে বরাদ্দ করা হয়। তারপর এটি মূল প্রোগ্রামে ফিরে আসে।
C-তে ফাংশন প্রোটোটাইপ এবং ফাংশন সংজ্ঞার মধ্যে মিল কী?
- ফাংশনের প্রোটোটাইপ এবং ফাংশনের সংজ্ঞা উভয়ই ফাংশনের সাথে সম্পর্কিত।
- ফাংশনের প্রোটোটাইপ এবং ফাংশনের সংজ্ঞা উভয়েই ফাংশনের নাম রয়েছে৷
- ফাংশনের প্রোটোটাইপ এবং ফাংশনের সংজ্ঞা উভয়েই রিটার্নের ধরন রয়েছে।
- ফাংশনের প্রোটোটাইপ এবং ফাংশনের সংজ্ঞা উভয়েই পরামিতি ধারণ করে।
C-তে ফাংশন প্রোটোটাইপ এবং ফাংশন সংজ্ঞার মধ্যে পার্থক্য কী?
C ফাংশন প্রোটোটাইপ বনাম ফাংশন সংজ্ঞা |
|
ফাংশন প্রোটোটাইপ ফাংশনের নাম, রিটার্ন টাইপ, প্যারামিটার নির্দিষ্ট করে কিন্তু ফাংশন বডি বাদ দেয়। | ফাংশনের সংজ্ঞা ফাংশনের নাম, রিটার্ন টাইপ নির্দিষ্ট করে; পরামিতি একটি ফাংশন বডি অন্তর্ভুক্ত। |
বাস্তবায়ন | |
ফাংশন প্রোটোটাইপে ফাংশন বাস্তবায়ন নেই। | ফাংশনের সংজ্ঞাটিতে ফাংশন বাস্তবায়ন রয়েছে। |
সারাংশ – C এ ফাংশন প্রোটোটাইপ বনাম ফাংশন সংজ্ঞা
প্রোগ্রামে ফাংশন ব্যবহার করার সুবিধা রয়েছে। ফাংশন কোড পুনরায় ব্যবহারযোগ্যতা বৃদ্ধি. একই কোড বারবার লেখার প্রয়োজন নেই। পরিবর্তে, প্রোগ্রামার প্রোগ্রামটি ভাগ করে প্রয়োজনীয় ফাংশন কল করতে পারে। সি-তে লাইব্রেরি ফাংশন আছে। এই ফাংশনগুলি সি হেডার ফাইলগুলিতে ঘোষণা করা হয়। এর মধ্যে কিছু হল printf(), scanf() ইত্যাদি। প্রোগ্রামার তাদের নিজস্ব ফাংশনও লিখতে পারে। দুটি পদ আছে যা সি-তে ফাংশনের সাথে যুক্ত। তারা ফাংশন প্রোটোটাইপ এবং ফাংশন সংজ্ঞা। সি-তে ফাংশন প্রোটোটাইপ এবং ফাংশনের সংজ্ঞার মধ্যে পার্থক্য হল যে ফাংশন প্রোটোটাইপ শুধুমাত্র ফাংশনের ঘোষণা ধারণ করে যখন ফাংশনের সংজ্ঞায় ফাংশনের প্রকৃত বাস্তবায়ন থাকে।
C এ ফাংশন প্রোটোটাইপ বনাম ফাংশন সংজ্ঞার PDF ডাউনলোড করুন
আপনি এই নিবন্ধটির পিডিএফ সংস্করণ ডাউনলোড করতে পারেন এবং উদ্ধৃতি নোট অনুসারে অফলাইন উদ্দেশ্যে এটি ব্যবহার করতে পারেন। দয়া করে এখানে PDF সংস্করণ ডাউনলোড করুন: C এ ফাংশন প্রোটোটাইপ এবং ফাংশন সংজ্ঞার মধ্যে পার্থক্য