Nie wiem jak prawidłowo przesłać tablicę dwuwymiarową do funkcji poprzez wskaźnik funkcji.
Gdy miałem tablicę jednowymiarową, to było wszystko ok:
#include <iostream>
using namespace std;
int sortowanie(int liczby[], int *ile)
{
int *wsk;
int bufor;
wsk = &bufor;
cout << "Przed sortowaniem: ";
for(int i = 0; i < *ile; i++)
{
cout << *(liczby+i) << ", ";
}
for(int u = 0; u < 2; u++)
{
for(int j = 0; j < *ile; j++)
{
for(int k = 0; k < *ile; k++)
{
if(u == 0)
{
if(*(*(liczby+u)+k) > *(*(liczby+u)+k+1))
{
*wsk = *(liczby+k+1);
*(liczby+k+1) = *(liczby+k);
*(liczby+k) = *wsk;
}
}
else if(u == 1)
{
if(*(*(liczby+u)+k) < *(*(liczby+u)+k+1))
{
*wsk = *(liczby+k+1);
*(liczby+k+1) = *(liczby+k);
*(liczby+k) = *wsk;
}
}
}
}
}
/*cout << "Po sortowaniu od najmniejszej: ";
for(int q = 0; q < *ile; q++)
{
cout << *(liczby+q) << ", ";
}*/
}
int main()
{
int ile;
cout << "Ile liczb chcesz posortowac?: ";
cin >> ile;
int **liczby = new int *[2];
liczby[0] = new int[ile];
liczby[1] = new int[ile];
for(int i = 0; i < 2; i++)
{
for(int j = 0; j < ile; j++)
{
cout << "Podaj " << j+1 << " liczbe: ";
cin >> *(*(liczby + i) + j);
}
break;
}
system("pause");
int (*wsk_fun)(int[], int*);
wsk_fun = sortowanie;
wsk_fun(*liczby, &ile);
delete [] liczby;
return 0;
}
ale jak zmieniłem tablicę na dwuwymiarową to mam problem z przesłaniem jej jako argument do funkcji i nie wiem jak edytować mój kod.