Page 1 of 1

struct von struct initialsieren

Posted: 08. May 2008 13:59
by mi ho
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: Select all

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

Posted: 08. May 2008 14:12
by mi ho
ich bin ein bisschen weiter gekommen:

Code: Select all


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?

Posted: 08. May 2008 22:47
by Janka
mi ho wrote: Hat jemand eine Idee?

Code: Select all

#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

Posted: 09. May 2008 13:27
by mi ho
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