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