Just nu i M3-nätverket
Jump to content

Initialisera matris av en typedef struct-datatyp


Cabron

Recommended Posts

Hej

 

Jag lyckas inte initialisera en matris om datatypen är en typedef struct. Alltså det går bra med en befintlig datatyp, t.ex:

 

int int_matris[4]={1,2,3,4};

 

Men det går inte om jag först definierar en datatyp, till exempel.

 

typedef struct {

int ett_tal;

int ett_annat_tal;

} min_typ;

 

static const min_typ en_variabel = {1,2};

 

min_typ min_matris[1][1]={en_variabel};

 

 

Felmeddelandet jag får är:

'not static initializer for min_matris'

Och jag får samma felmeddelandet om jag gör min_matris statisk eller struntar i att göra en_variabel statisk.

 

Det skulle fungera att deklarera matrisen och sedan fylla den i en init-funktion, men det skulle underlätta väldigt mycket om jag lyckades initialisera den direkt. Finns det någon begåvad människa som kan hjälpa mig?

 

Mvh

 

Link to comment
Share on other sites

Hej igen

 

Jag kan tillägga att det också fungerar att göra så här:

 

typedef struct {

int ett_tal;

int ett_annat_tal;

} min_typ;

min_typ min_matris[1][1]={1,2};

 

Vilket känns ganska frustrerande. Tacksam för hjälp.

 

 

[inlägget ändrat 2003-01-13 13:39:52 av Petter46]

Link to comment
Share on other sites

Kompilatorn vill se en int i initieringslistan men ser en min_typ.

 

Följande borde funka men är kanske inte vad du tänkt dig:

 

min_typ min_matris[1][1]={ en_variabel.ett_tal, en_variabel.ett_annat_tal };

 

 

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.



×
×
  • Create New...