Salve, come da titolo vorrei riempire una matrice tramite una funzione esterna.
La funzione deve inoltre allocare dinamicamente la memoria da un numero precedentemente inserito in input nel main, e infine la matrice deve risultare allocata correttamente nel main, e riempita come descritto nella funzione.
La funzione deve agire su 4 matrici diverse allocandole nello stesso modo e riempiendole con gli stessi caratteri, per cui avevo pensato di fare una cosa del genere
codice:
char riempi_standard(char **vet, int n)
{
int i, j;
char a=97;
char b=48;
vet=(char **)malloc(n*sizeof(char **));
for (i=0; i<n; i++)
vet[i]=(char *)malloc(n*sizeof(char *));
for (i=0; i<n; i++)
for (j=0; j<n; j++)
vet[i][j]='~';
for (i=1; i<n-1; i++, a++)
vet[0][i]=a;
for (i=1; i<n-1; i++, b++)
vet[i][0]=b;
vet[0][0]=' ';
}
int main()
{
int i, j, n;
char **matrix1, **matrix2, **matrix3, **matrix4;
printf("Inserire n: ");
scanf("%d", &n);
riempi_standard(matrix1, n);
printf("\n\n\n");
for (i=0; i<n; i++)
{
for (j=0; j<n; j++)
printf("%c", matrix1[i][j]);
printf("\n");
}
system("pause");
return 0;
}
ho provato a cambiare i puntatori, a utilizzare misure fisse delle matrici, a usare il return, ma da sempre risultato che, durante l'esecuzione della funzione, il programma si blocca.. potete aiutarmi? grazie