scanf("%d\n", &x2);
if(tab[x2-1].n == 0)
{
tab[x2-1].n = 1;
tab[x2-1].wsk = new int[1];
tab[x2-1].wsk[0] = i;
} else {
tablica = new int[tab[x2-1].n+1];
CopyTab(tablica, tab[x2-1].wsk, tab[x2-1].n);
delete tab[x2-1].wsk;
tab[x2-1].wsk = NULL;
tab[x2-1].n++;
tab[x2-1].wsk = new int[tab[x2-1].n];
CopyTab(tab[x2-1].wsk, tablica, tab[x2-1].n-1);
delete tablica;
tablica = NULL;
tab[x2-1].wsk[tab[x-2].n-1] = i;
}
void CopyTab(int *target, int *source, int n)
{
for(int i = 0; i < n; i++)
target[i] = source[i];
}
Powiedzcie czemu czaly czas jest blad segmentation fault? Przy troche wiekszych danych? np. 20??? Jak to troche zoptymalizowac??
mam taka structure:
typedef struct struktura
{
int n;
int *tab;
}
tab to wskaznik na tablice [na stercie]
n to rozmiar tej tablicy
n jest zwiekszane zawsze przy powiekszaniu rozmiaru tablicy
podczas wczytywania danych musze zrobic cos takiego:
- czytam liczbe x
-powiekszam aktualny rozmiar tablicy o 1 - wstawiam x do ostatniej komorki tablicy
wiec dlatego jest ta tablica dynamiczna... please pomozcie to wazne...
aha zapomnialem dodac kompilator g++