Другие языки программирования и технологии

С++ Динамический массив

Как сделать в с++ динамический массив?(для отправки в функцию)(квадратный) И если возможно,как сделать чтобы функция возвращала массив.
// danil_biba_2011-11-17
#include <iostream>
#include <ctime>
#include <cstdlib>
using namespace std;

int** func(int** a, int sizeLine, int sizeColumn);

void main()
{

int sizeLine, sizeColumn;

cout << " Input quantity of lines of array: ";
cin >> sizeLine;
cout << " Input quantity of columns of array: ";
cin >> sizeColumn;

int **a = new int* [sizeLine];

for (int n = 0; n < sizeLine; n++)
{
a[n] = new int [sizeColumn];

for (int m = 0; m < sizeColumn; m++)
{
a[n][m] = 0;
}
}

cout << " Initial array:" << endl;

for (int n = 0; n < sizeLine; n++)
{
cout << endl;

for (int m = 0; m < sizeColumn; m++)
{
cout << ' ' << a[n][m];
}
}

func(a, sizeLine, sizeColumn);

cout << " The returned array:" << endl;

for (int n = 0; n < sizeLine; n++)
{
cout << endl;

for (int m = 0; m < sizeColumn; m++)
{
cout << ' ' << a[n][m];
}
}

fflush(stdin);
cin.get();

for (int n = 0; n < sizeLine; n++) delete [] a[n];
delete [] a;
}

int** func(int** a, int sizeLine, int sizeColumn)
{
srand((unsigned) time(NULL));

for (int n = 0; n < sizeLine; n++)
{
cout << endl;

for (int m = 0; m < sizeColumn; m++)
{
a[n][m] = rand() % 10;
}
}

return a;
}
Алихан Сыздыкбеков
Алихан Сыздыкбеков
60 250
Лучший ответ
динамический массив делается запросом к операционной системе о выделении памяти
int* mas = new int[100];

функция может сама выделить память и возвратить укзатель на эту область, но вы должны после использования удалить массив из динамической памяти

delete [ ] mas;
передавайте указатель на массив и возвращайте указатель на массив....