struct von struct initialsieren

Antworten
Nachricht
Autor
mi ho

struct von struct initialsieren

#1 Beitrag von mi ho » 08. Mai 2008 13:59

Hallo zusammen,

ich versuche einen struct von einem struct statisch zu initialisieren, leider gibt der gcc folgende Fehler:

field register1 has incomplete type
field register2 has incomplete type
field register3 has incomplete type

Code: Alles auswählen

struct {
             UINT8 adr,
             UINT8 val
           } REG_T;

struct {
             struct REG_T register1;
             struct REG_T register2;
             struct REG_T register3;
           } CONFIG_T;

struct CONFIG_T config = {
                                               {0x13, 0x05},
                                               {0x16, 0x11},
                                               {0x19, 0xFA}
                                            };

Was mache ich falsch?

Vielen Dank auch!

Gruss

mi ho

mi ho

#2 Beitrag von mi ho » 08. Mai 2008 14:12

ich bin ein bisschen weiter gekommen:

Code: Alles auswählen


struct REG_T{ 
             UINT8 adr, 
             UINT8 val 
           }; 

struct CONFIG_T{ 
             struct REG_T register1; 
             struct REG_T register2; 
             struct REG_T register3; 
           }; 

struct CONFIG_T config = { 
                                               {0x13, 0x05}, 
                                               {0x16, 0x11}, 
                                               {0x19, 0xFA} 
                                            }; 



Der Fehler vom GCC lautet jetzt:

variable config has initializer but incomplete type.


Hat jemand eine Idee?

Benutzeravatar
Janka
Beiträge: 3581
Registriert: 11. Feb 2006 19:10

#3 Beitrag von Janka » 08. Mai 2008 22:47

mi ho hat geschrieben: Hat jemand eine Idee?

Code: Alles auswählen

#define UINT8 char

struct REG_T {
             UINT8 adr;
             UINT8 val;
           };

struct CONFIG_T {
             struct REG_T register1;
             struct REG_T register2;
             struct REG_T register3;
           };

struct CONFIG_T config = {
                                               {0x13, 0x05},
                                               {0x16, 0x11},
                                               {0x19, 0xFA}
                                            };


int main(void)
{
  return 0;
}
compiliert hier fehlerfrei.

Janka
Ich vertonne Spam immer in /dev/dsp statt /dev/null.
Ich mag die Schreie.

mi ho

#4 Beitrag von mi ho » 09. Mai 2008 13:27

Boooaaahhhh, ich habs rausgekriegt! Das Header-File war nicht inkludiert!!! Keine Ahnung wieso nicht ein anderer Fehler gekommen ist....

Danke für's Probieren.


mi ho

Antworten