PDA

View Full Version : سوال: آرایه دوبعدی



FarshadEnj
یک شنبه 21 بهمن 1397, 13:44 عصر
سلام دوستان میخاستم یه ارایه دو بعدی بنویسم که سطر و ستونو از ورودی بگیره و بتونم توی یه تابع دیگه فراخوانیش کنم برای گرفتن عضوهای ارایه ولی زمانی که تابع گرفتن عضو ارایه رو در بالا تعریف میکنم میگه که حتما باید ابتدا تعداد ستون ها مشخص باشه چه راهی واسه رفع این مشکل پیشنهاد میدید؟
void get_mat(float mat1[][b])v
میگه که b حتما باید مشخص باشه..

farhad_shiri_ex
یک شنبه 21 بهمن 1397, 16:15 عصر
سلام دوستان میخاستم یه ارایه دو بعدی بنویسم که سطر و ستونو از ورودی بگیره و بتونم توی یه تابع دیگه فراخوانیش کنم برای گرفتن عضوهای ارایه ولی زمانی که تابع گرفتن عضو ارایه رو در بالا تعریف میکنم میگه که حتما باید ابتدا تعداد ستون ها مشخص باشه چه راهی واسه رفع این مشکل پیشنهاد میدید؟
void get_mat(float mat1[][b])v
میگه که b حتما باید مشخص باشه..

میتونید اینطوری بازنویسی کنید تابع را ...

#include <iostream>

#define BYTE unsigned char
#define NODE 3
#define BUF 64000l

using namespace std;

template<class T, size_t N, size_t Y>
void genArray(const T (&arr)[N][Y])
{
cout << sizeof(arr) << endl;
cout << *(arr[0]+1) << endl;
}


int main()
{

BYTE m_CBT[NODE][BUF];
m_CBT[0][0] = 'a';
m_CBT[0][1] = 'b';
m_CBT[0][2] = 'c';
genArray<BYTE>(m_CBT);
return 0;
}