Strona 1 z 1

[C] Dynamiczna alokacja tablic dwuwymiarowych - qick que

: 5 gru 2010, o 15:16
autor: jimarcin
Witajcie,
proszę powiedzieć, czy gdzieś popełniłem błąd?
Jak można się domyślić, to początek programu; później tylko wypisuje tablice (w tym wypadku macierz) i czysci pamięć.

Kod: Zaznacz cały

int N, M;
	int **tab;
        int i, j;

	printf("Ile wierszy? ");
		scanf("%d", &N);
	printf("
Ile kolumn? ");
		scanf("%d", &M);

	tab=(int**)malloc(N*sizeof(int *));
        for(i=0; i<M; i++)
		{
                tab[i]=(int*)malloc(M*sizeof(int));
		}
Ciekawostka: Śmiga przy marycach 5x5, 2x2, ale sypie się przy takich jak 5x1..
Pomocy!

Pozdrawiam.

Tutaj cały kod dla zainteresowanych:
Ukryta treść:    

[C] Dynamiczna alokacja tablic dwuwymiarowych - qick que

: 5 gru 2010, o 17:18
autor: Szemek

Kod: Zaznacz cały

tab=(int**)malloc(N*sizeof(int *));
        for(i=0; i<M; i++)
tu masz błąd z N i M

[C] Dynamiczna alokacja tablic dwuwymiarowych - qick que

: 5 gru 2010, o 17:29
autor: jimarcin
Dziękuję za odpowiedź : )
Również podejrzewałem to miejsce, bo na dobra sprawę to tam skupia sie ta cala dynamika..
ale jako ze obcuję z tym tematem od wczoraj, to nie za bradzo ograniam..

mógłbyś trochę jaśniej naprowadzić jak powinno to działać?

[C] Dynamiczna alokacja tablic dwuwymiarowych - qick que

: 5 gru 2010, o 17:48
autor: Szemek
Rozpatruj dwuwymiarową tablicę alokowaną dynamicznie jako tablicę tablic.
Najpierw tworzysz tablicę wskaźników, które wskazują na tablice jednowymiarowe.