Fehlermeldung: " error C2059: Syntaxfehler : ';' "



  • Moin!
    Ich bekomme an folgender mit ->...<- markierten Stelle o.a. Fehlermeldung.
    ...
    else
    {
    printf("\tKein Datensatz gefunden!\n");
    auswahl();
    }
    -> return ( student); <-
    }

    student is eine struktur und soll an eine Sortierfunktion übergeben werden.

    Ich muß das gesamte Programm morgen abgeben!! Hab keinen Plan woran der Komplier sich stört.



  • ^^ poste mal die ganze funktion.
    🙂



  • Die ganze Funktion lautet:

    char *laden()
    {
    FILE *fptr;

    fptr = fopen("Daten.txt", "r+");
    if(fptr != NULL)
    {
    n = 0;

    while(12==fscanf(fptr,"%s %d %s %s %f.2",
    person[n].Name,
    person[n].Matrikelnummer,
    person[n].Semester,
    person[n].Fach,
    person[n].Note))

    n++;

    fclose(fptr);
    }
    else
    {
    printf("\tKein Datensatz gefunden!\n");
    auswahl();
    }
    return( student);
    }



  • Und was soll da student sein?



  • was ist das, was da returned wird? eine globale char*-variable?
    🙂



  • Nein, student ist eine global definierte Struktur:

    struct student
    {
    char Name[30];
    unsigned long Matrikelnummer[30];
    char Semester[30];
    char Fach[30];
    float Note;
    };



  • Und warum returnst du das in laden(), obwohl es da garnicht benutzt wurde?



  • eine struct-definition kann man nicht zurückgeben. willst wohl das objekt zurückgeben? ändere mal den funktionskopf in: struct student *laden() und das return in: return &person
    übrigens, die struct ist seltsam aufgebaut. nur ein name, aber 30 matrikelnummern?
    🙂



  • äääh, ich meinte: return person;
    ^^ist ja ein array
    🙂



  • Danke, erstmal! Das Problem ist gelöst, dafür hab ich jetzt zwei neue.
    Wenn ich die ncht gelöst kriege weiß ich ja wo ich Hilfe finde!
    Danke Leute!!!


Log in to reply