przekazanie tablicy dynamicznej do funkcji

0

Mam taki oto problem:

mam sobie tablicę dynamiczną dwuwymiarową. Chce ją przekazać do funkcji i chce, żeby ta funkcja zwiększyła mi wartości w tej tablicy np x3 i żeby zmiany były widoczne w pierwotnej tablicy. Możecie podpowiedzieć jak to zrobić. Mam sobie taką funkcję:

void increaseTab1(int *tab[], int w, int k)
{
    for (int i = 0; i < w; ++i)
    {
        for (int j = 0; j < k; ++j)
        {
            cout << (tab[i][j]) * 3 << " ";
        }cout << endl;
    }
}

jednakże ta funkcja nie zamienia "oryginalnych" wartości w tablicy w main.

w main tablice są stworzone w ten sposób:

int wiersze;
    int kolumny;
    cerr << "Podaj licbe wierszy" << endl;
    cin >> wiersze;
    
    cerr << "Podaj liczbe kolumn" << endl;
    cin >> kolumny;
    int **A = new int*[wiersze];
    int **B = new int*[wiersze];
    int **C = new int*[wiersze];
....
 

jak mam przekazać tablicę dynamiczną do funkcji, żeby wartości w oryginalnej tablicy podanej z palca w main uległy zminie po wywołaniu funkcji?

0

nie dziwię się, że nie działało skoro to w cout mnożyłem wartość. Poprawna funkcja wygląda tak:

 void increaseTab1(int *tab[], int w, int k)
{
    for (int i = 0; i < w; ++i)
    {
        for (int j = 0; j < k; ++j)
        {
            tab[i][j] = tab[i][j] * 3;
        }cout << endl;
    }
}
1

Uniwersalne: http://ideone.com/dP3T9c

1 użytkowników online, w tym zalogowanych: 0, gości: 1