Strutture e funzioni in C

di il
2 risposte

Strutture e funzioni in C

Ciao a tutti, non sono ancora esperto di C e sto cercando di imparare.L'esercizio mi richiede di creare un array di strutture dinamico, che contenga una variabile studente. Ho scritto la funzione che mi inizializza una cella; volevo sapere se è scritta correttamente:
Studente inizializza_array(Studente *array){
    printf("Inserisci il nome dello studente:");
    scanf("%s",array->nome);
    printf("Inserisci il cognome dello studente:");
    scanf("%s",array->cognome);
    printf("Inserisci data di nascita");
    array->data_nascita=inizializza_data();
    return *array;
}
Grazie a tutti per l'aiuto.

2 Risposte

  • Re: Strutture e funzioni in C

    Innanzitutto dovresti mostrare la struttura che hai definito.
    Prima di passare alla funzione, che ti anticipo ha diversi problemi, mostra come allochi la struttura o l'array di strutture.
  • Re: Strutture e funzioni in C

    Allora queste sono le strutture che ho scritto:
    typedef struct{
        int giorno;
        int mese;
        int anno;
    }Data;
    typedef struct{
        char nome[DIM];
        char cognome[DIM];
        Data data_nascita;
    }Studente;
    Mentre questa è la funzione che alloca l'array di strutture:
    Studente* create_array(int n){
        Studente *array=NULL;
        array=(Studente*)malloc(n*sizeof(Studente));
        if(array==NULL){
            exit(-1);
        }
        return array;
    }
Devi accedere o registrarti per scrivere nel forum
2 risposte