witam forumowiczów serdecznie, mam następujący problem: napisałem funkcje do generowania macierzy z dynamicznie alokowaną pamięcią. następnie napisałem funkcję która pozwoli mi zwolnić przydzieloną wcześniej pamięć. program po uruchomieniu powoduje że komputer wydaje dźwięk błędu i program się zawiesza. jeśli to problem trywialny to wybaczcie.
#include "stdafx.h"
#include "stdio.h"
#include "malloc.h"
#include "time.h"
#include "stdlib.h"
int** generowanie(int m, int n)
{
srand(time(0));
int **wsk = (int**)malloc(sizeof(wsk)*m);
for (int i = 0; i <= m; i++)
{
wsk[i] = (int*)malloc(sizeof(wsk)*n);
}
for (int i = 0; i <= m-1; i++)
{
for (int j = 0; j <= n-1; j++)
{
wsk[i][j] = rand()%100;
}
}
return wsk;
}
void zwalnianiePamieci(int **wsk, int n)
{
for (int i = 0; i <= n; i++)
{
free(wsk[i]);
}
free(wsk);
}
int main()
{
int m = 3;
int n = 3;
int **w = generowanie(m, n);
zwalnianiePamieci(w, n);
return 0;
}