struct übergeben ? Wie mache ich das richtig ?



  • Guten Abend,

    als Anfänge beschäftige ich mich nun seit ein paar Wochen (privat) mit C.
    Nun habe ich folgendes Problem :

    Ich lese aus einer Binär-Datei in ein struct ein und möchte diese
    eingelesenen Daten an eine Funktion übergeben. Ich weiß aber nicht,
    wie ich das anstellen muss ...

    So sieht mein Gedankan-Ansatz bis jetzt aus (alles unwesentliche weggelassen) :

    #define MAX 20
    typedef struct
    {
          char Filiale[21];
          float Umsatz;
          float Bestand;
          float Beschaeftigte;
          float Loehne;
          short Quadratmeter;
          float AnlageVermoegen;
    } SATZ;
    
    main()
    {
          SATZ katalog[MAX];
    }
    
    arbProd(void)
    {
          int i=0;
          char filiale[MAX][21];
    
          for(i=0; i<MAX; i++)
          {
          }
    }
    

    Und nun möchte ich den in Zeile 15 erstellten katalog[MAX] an die
    Funktion
    arbProd() aus Zeile 19 übergeben.

    Wie mache ich das am besten ???

    MfG und vielen Dank im voraus !



  • Wie bei jedem anderen (eindimensionalen) Array auch: T* foo oder T foo[], bei dir also:

    void arbProd(SATZ* foo)
    

    bzw.

    void arbProd(SATZ foo[])
    

    Übergabe:

    arbProd(katalog);
    

Anmelden zum Antworten