Tu jest program który ma obrazować mój problem. A problem polega na tym jak przesłać tablicę wielowymiarową do funkcji przez wskaźnik? Dobrze by było też także dowiedzieć się jak zapisać odpowiednią deklarację takiej funkcji bo domyślam się że w moim przykładzie nieźle namieszałem.
#include <iostream>
void foo(int *[][2], int);
int main()
{
int tablica[4][2] = {{3,5},{6,3},{3,4},{5,8}};
foo(tablica, 8);
}
void foo(int *tab[][2], int rozmiar)
{
// ciało funkcji które jeszcze nie powstało
}
Wiem że można to zrobić tak
#include <iostream>
void foo(int [][2], int );
int main()
{
int tablica[4][2] = {{3,5},{6,3},{3,4},{5,8}};
foo(tablica, 8);
}
void foo(int tab[][2], int rozmiar)
{
// ciało funkcji które jeszcze nie powstało
}
Znaczy... nie wiem czy można ale przynajmniej się kompiluje. Tylko czy praca bez wskaźników nie wyśle całej tablicy do funkcji? Bo to by było nie fajne... Dodatkowo był problem z inicjalizacją tablicy gdyż w pewnej książce co pomniejszych nawiasów nie było. Potem zdaje się element tablicy oblicza się ze wzoru (i * ilość_kolumn) + j dla tablicy [i][j].