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

C++-এ অ্যারে ফাংশনে পাস করা (Passing Array to Function)

C++-এ অ্যারে ভ্যালু হিসেবে পাস করা যায় না, পয়েন্টার হিসেবে পাস হয় (array decays to pointer)। এক-মাত্রিক অ্যারে পাস করার তিনটি সমতুল্য সিনট্যাক্স:

১. পয়েন্টার হিসেবে

void myFunction(int *param) { ... }

২. সাইজড অ্যারে হিসেবে (সাইজ উপেক্ষা করা হয়)

void myFunction(int param[10]) { ... }

৩. আনসাইজড অ্যারে হিসেবে

void myFunction(int param[]) { ... }

উদাহরণ

#include <iostream>
using namespace std;

void arrayAccept(int arr[]) {
    cout << "first element is: " << arr[0];
}

int main() {
    int arr[2] = {0, 1};
    arrayAccept(arr);
    return 0;
}

আউটপুট

first element of array is 0

গুরুত্বপূর্ণ: ফাংশনের ভিতরে sizeof(arr) দিয়ে অ্যারের আকার জানা যায় না (পয়েন্টার সাইজ রিটার্ন করবে)। আকার আলাদা প্যারামিটার হিসেবে পাস করতে হয় বা std::span (C++20) / std::vector / std::array ব্যবহার করুন।

  1. C++-এ ফাংশনে অ্যারে প্যারামিটারের সাইজ কীভাবে প্রিন্ট করবেন?

  2. C++-এ ফাংশন থেকে লোকাল অ্যারে রিটার্ন কীভাবে করবেন?

  3. C++-এ ফাংশন থেকে অ্যারে রিটার্ন কীভাবে করবেন?

  4. C++-এ দুই মাত্রিক অ্যারে (2D Array) ফাংশনে পাস করা