Zacznijmy od łatwiejszej opcji, czyli przekazania tablicy:
int max(int *tablica, int n) {
int result = tablica[0];
for (int i=1; i<n; i++) {
if (tablica[i]>result)
max=tablica[i];
}
return result;
}
Przykładowe użycie:
int tablica[] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };
int n = sizeof(tablica)/sizeof(int);
int x = max(tablica, n);
A teraz odebranie tablicy:
void nowaTablica(int **tablica, int n) {
*tablica = new int[n];
for (int i=0; i<n; i++)
(*tablica)[i]=i;
}
Oraz użycie:
int *tablica = nullptr;
nowaTablica(&tablica, 10);