#include <stdio.h>
#include <stdlib.h>
void funkcja(int*** table2d, int** lengths){
if (*table2d == NULL){
*table2d = (int**)(malloc(sizeof(int*)));
*lengths = (int*)(malloc(sizeof(int)));
scanf("%d", &(*(*(lengths + 0))));
*(*(table2d + 0)) = (int*)(malloc(*(*(lenghts + 0)) * sizeof(int)));
int i = 0, tmp;
while (i < *(*(lengths + 0))){
scanf("%d", &tmp);
*(*(*(table2d + 0) + i)) = tmp;
i++;
}
}
}
int main(){
int** table2d = NULL;
int* lengths = NULL;
funkcja(&table2d, &lengths);
return 0;
}
Nie wiem co źle zapisałem że ta funkcja nie działa.
Przykładowe wywołanie
5 0 1 2 3 4
powoduje błąd wykonania po wczytaniu 1....
tak jakby za mało pamięci alokował? O co chodzi?
Proszę o pomoc gdzie tkwi błąd