Portierungsproblem mit einer Struktur



  • kingruedi schrieb:

    @Shade
    wenn der Code zu einem C Programm gehört, was er in einem C++ Programm benutzen will, dann kommt er wohl nicht drum rum dort C Code zu verwenden.

    warum muss er den C code dann aendern?

    ich habe es so verstanden, dass der C code jetzt als c++ code kompiliert wird.



  • warum muss er den C code dann aendern?

    weil der Code auch als C Code falsch ist

    ich habe es so verstanden, dass der C code jetzt als c++ code kompiliert wird.

    dann kann man das natürlich ändern

    (btw. wenn ich recht hab, gehört das eh nach ANSI C)



  • kingruedi schrieb:

    weil der Code auch als C Code falsch ist

    oh, so genau hab ich nicht hingesehen...
    aber stimmt.

    jetzt verstehe ich garnix mehr.



  • Shade Of Mine schrieb:

    kingruedi schrieb:

    weil der Code auch als C Code falsch ist

    jetzt verstehe ich garnix mehr.

    Was ist an dem C Konstruct mit typedef struct falsch?

    BTW ich weis das das für diese Frage das falsche Forum ist, aber bitte trotzdem eine Antwort



  • PAD schrieb:

    Was ist an dem C Konstruct mit typedef struct falsch?

    struct BASESTRUCT *next
    kann er nicht kennen, denn durch das typedef wird erst 'ausgewertet' wenn die struct vollstaendig definiert ist.

    Mibos Loesung ist die C Loesung
    und meine die C++ Loesung.



  • Shade Of Mine schrieb:

    und meine die C++ Loesung.

    nicht ganz

    das wär die C++ Lösung (wobei man in C++ das wahrscheinlich vom Konzept her ganz anders machen würde :))

    struct BASESTRUCT 
    {   
      int use;     // this entry is commanded to be decoded   
      int Type;     // type of data record [RE, RI, EN, FP]   
      char name[5];  //Nametext   
      BASESTRUCT *next;   // Pointer to next item in list the last item is set to NULL   
      BASESTRUCT *prev;   // Pointer to previous item in list the first itme is set to NULL   
      void *TypData;         // Pointer auf die Typspezifischen Daten, NULL default will be filled with typ specific data   
      int Start;             // Start Bit, first bit to decode in word for this item   
      int Number;             // AnzahlBits number of bits to decode for this item   
    };
    


  • kingruedi schrieb:

    Shade Of Mine schrieb:

    und meine die C++ Loesung.

    nicht ganz

    sorry, seh den unterschied zwischen deinem und meinem code gerade nicht.



  • //Shade Of Mine
      struct BASESTRUCT *next; 
      struct BASESTRUCT *prev;
    
    //kingruedi 
      BASESTRUCT *next;
      BASESTRUCT *prev;
    


  • oh, bloeder copy&paste fehler

    danke 👍



  • Danke, hat mir ne Menge gebracht.


Anmelden zum Antworten