Witam, mam mały problem ze wskaźnikami do tabliucy dwuwymiarowej. Wszystkie funkcje są jasne mam nadzieje i uprzejmie bym prosił powiedzieć gdzie robie błąd i co poprawić. Próbowałem różnych sposobów i zawsze po kompilacji program i tak wyrzuca błąd. Muszę na zajęcia na uczelnie zrobić kilka programów z tablicami i macierzami dlatego postanowiłem to zrobić na wskaźnikach żeby funkcje były jak najbardziej przenośne ale niestety nic nie działa. Pomóżcie ^^
/* LAB_02
*
* zad1.c - suma dwoch tablic 10x10
*
* autor: Staszek Misztalski
*
* created on Code::Blocks
*
*/
#include <stdio.h>
#include <stdlib.h>
void losuj_do_tablicy(int**);
void wypisz_tablice(int**);
int losuj_calkowita();
int main()
{
int zarodek;
int tab_a[10][10], tab_b[10][10];
int **p_tab_a, **p_tab_b;
p_tab_a = tab_a;
p_tab_b = tab_b;
zarodek = time(NULL);
srand(zarodek);
losuj_do_tablicy(p_tab_a);
losuj_do_tablicy(p_tab_b);
printf("TABLICA PIERWSZA:\n");
wypisz_tablice(p_tab_a);
printf("\n\n");
printf("TABLICA DRUGA:\n");
wypisz_tablice(p_tab_b);
return 0;
}
int losuj_calkowita()
{
int liczba;
liczba = rand();
return liczba;
}
void losuj_do_tablicy(int **tab)
{
int i,j;
for(i=0;i<10;i++)
{
for(j=0;j<10;j++)
{
* (*(tab+i)+j) = losuj_calkowita();
}
}
}
void wypisz_tablice(int **tab)
{
int i,j;
printf("\nOto liczby zapisane w twojej tablicy:");
for(i=0;i<10;i++)
{
for(j=0;j<10;j++)
{
printf("\ntab[%d] = %d",i, *(*(tab+i)+j));
}
}
}