কম্পিউটার

একটি C++ ফাংশনে দ্বিমাত্রিক অ্যারে পাস করা


C++ একটি ফাংশনে একটি আর্গুমেন্ট হিসাবে একটি সম্পূর্ণ অ্যারে পাস করার অনুমতি দেয় না। যাইহোক, আপনি একটি সূচক ছাড়াই অ্যারের নাম উল্লেখ করে একটি অ্যারেতে একটি পয়েন্টার পাঠাতে পারেন। একটি ফাংশনে 2D অ্যারে পাস করার তিনটি উপায় আছে −

2D অ্যারের কলামের আকার নির্দিষ্ট করুন

void processArr(int a[][10]) {
   // Do something
}

পয়েন্টার ধারণকারী অ্যারে পাস করুন

void processArr(int *a[10]) {
   // Do Something
}

// When callingint *array[10];
for(int i = 0; i < 10; i++)
   array[i] = new int[10];
processArr(array);

একটি পয়েন্টারকে একটি পয়েন্টারে পাঠান

void processArr(int **a) {
   // Do Something
}
// When calling:
int **array;
array = new int *[10];
for(int i = 0; i <10; i++)
   array[i] = new int[10];
processArr(array);

উদাহরণ

#include<iostream>
using namespace std;

void processArr(int a[][2]) {
   cout << "element at index 1,1 is " << a[1][1];
}
int main() {
   int arr[2][2];
   arr[0][0] = 0;
   arr[0][1] = 1;
   arr[1][0] = 2;
   arr[1][1] = 3;

   processArr(arr);
   return 0;
}

আউটপুট

এটি −

আউটপুট দেবে
element at index 1,1 is 3

  1. কিভাবে C++ এ একটি ফাংশনে অ্যারের প্যারামিটারের আকার প্রিন্ট করবেন?

  2. কিভাবে একটি C++ ফাংশন থেকে স্থানীয় অ্যারে ফিরিয়ে আনতে হয়?

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

  4. একটি C++ ফাংশনে একটি অ্যারে পাস করা