Strukturen verknüpfen



  • Hallo zusammen. Ich habe mal eine sehr wichtige Frage.

    Bekommt man es irgendwie hin, so eine Struktur zu verknüpfen? Denn Hier bekomme ich immer eine Fehlermeldung.

    struct Struktur1 {
    
      int irgendwas;  
    
    };
    
    struct Struktur2 {
    
      int irgendwasanderes;
      Struktur1 *pointer;
      Struktur2 *pnext;
    
    };
    

    also so dann verknüpfen:

    Struktur2->pointer->irgendwas;
    

    Vielen Dank im Voraus.

    gruß anno



  • welche fehlermeldung? glaskugel is kaputt un so.
    versuchs doch mal mit (dynamischer) speicherreservierung.



  • Fehler: Basisoperand von »->« hat Nicht-Zeiger-Typ »Struktur2«



  • also gut, ich erkläre es mal noch ein wenig besser:

    ich erzeuge mir zuerst einen Array einer Struktur. Aus dem heraus will ich dann
    auf die andere struktur zugreifen.

    struct Struktur1 {
    
      int irgendwas; 
      Struktur1 *pnext;
    
    };
    
    struct Struktur2 {
    
      int irgendwasanderes;
      Struktur1 *pointer;
    
    }; 
    
    void Testfunction(Struktur1 *head) {
    
       Struktur2 **test;
    
      test = new Struktur2*[10];
    
      for(int i=0; i < 10; i++) {                
        test [i] = new Struktur2[10];        
      }
    
      for(int i=0; i < 10; i++) {
    
        for(int n=0; n < 10; n++) {
    
          test[i][n]->ptext = head;
    
          head = head->pnext;
    
        }
      }
    
    }
    


  • Struktur2.pointer->irgendwas



  • test[i][n]->ptext ➡ test[i][n].ptext


Log in to reply