struct + pointer



  • hi. ich hab da eine frage:
    eine mitarbeiter verwaltung soll progr. werden. das struct sieht so aus:

    struct ma{
                    char name[20];
                    char vorname[20];
                    int persnr;
                    char position[20];
                    char fachgebiet[20];
                    int jahrgang;
                                    struct ma *nachfolger;
                    }mitarbeiter[100];
    

    damit sollen dann so allerlei lustige sachen gemacht werden. z.B. mitarbeiter eingeben, mitarbeiter löschen. liste sortieren etc. nun ich habe das programm hingebracht und es läuft auch. aber halt ohne pointer.
    mein prof will aber dass alles über den pointer *nachfolger läuft.
    der soll dan praktisch ein zeiger zu dem nächsten mitarbeiter sein.
    meine funktion "neuen mitarbeiter eingeben" sieht jetzt so aus:

    void eingabe(int nr,struct ma neu[],int *zeiger)
    {
    trennlinie();
    printf("Name...........................: ");gets(neu[nr].name);
    printf("Vorname........................: ");gets(neu[nr].vorname);
    printf("Personal Nr [4 stellig]........: ");scanf("%i",&neu[nr].persnr);
    fflush(stdin);
    printf("Position.......................: ");gets(neu[nr].position);
    printf("Fachgebiet.....................: ");gets(neu[nr].fachgebiet);
    printf("Geburtsjahrgang Nr [4 stellig].: ");scanf("%i",&neu[nr].jahrgang);
    fflush(stdin);
    trennlinie();
    }
    

    aufrufen tue ich sie so:

    case 1: eingabe(x++,mitarbeiter);
            break;
    

    wie muss ich den code umschreiben damit das mit den zeiger auf das nächste element funktioniert?

    schon mal vielen dank! anderl




Anmelden zum Antworten