কম্পিউটার টিউটোরিয়াল

C/C++ ফাংশন কল পাজল: প্যারামিটার-বিহীন ফাংশনে আর্গুমেন্ট পাস করা

সংক্ষিপ্ত বিবরণ

C এবং C++-এ খালি প্যারামিটার লিস্টवाले ফাংশনে আর্গুমেন্ট পাস করলে আচরণ ভিন্ন হয়।

কোড

void method() { /* প্রিন্ট */ }
int main() {
    method();
    method(2);  // আর্গুমেন্ট পাস
}

আউটপুট পার্থক্য

ল্যাঙ্গুয়েজফলাফল
C++Error: too many arguments to function 'void method()'
Cপ্রোগ্রাম এরর ছাড়া চলে (আর্গুমেন্ট ইগনোর হয়)

কারণ

  • C++: `void method()` মানে কোনো প্যারামিটার নেই (স্ট্রিক্ট টাইপ চেকিং)
  • C: `void method()` মানে প্যারামিটার লিস্ট অনির্দিষ্ট (K&R স্টাইল), ভেরিয়াডিক ফাংশনের মতো আচরণ করে
  • C-তে সঠিকভাবে প্যারামিটার নেই বোঝাতে `void method(void)` লিখতে হয়
  1. C/C++-তে putwchar() ফাংশন

  2. C/C++-তে mbsrtowcs() ফাংশন

  3. A-বাফার মেথড: C/C++-তে কম্পিউটার গ্রাফিক্স হিডেন সারফেস ডিটেকশন

  4. C/C++-তে system() ফাংশন: কম্যান্ড এক্সিকিউশন