Struct + Union

08/07/2010 - 15:39 von Robert Hartmann | Report spam
Hallo zusammen,

Nach folgender Typdefinition:

typedef union Point3D {
struct Axis {
double x;
double y;
double z;
} Axis;
double coord[3];
} Point3D;


wàre es möglich eine Variable von diesem Typ
wie folgt anzulegen.

Point3D p = { {0.1,0.2,0.3} };


Zugriff auf die Koordinaten ginge mit

p.Axis.x , p.Axis.y , p.Axis.z

oder mit

p.coord[0] , p.coord[1] , p.coord[2]


sizeof(Point3D) liefert bei mit 24.

Nun frage ich mich, ob es eine Möglichkeit
gibt einen Elementezugriff zu ermöglichen,
so dass man schreiben kann und sich die sizeof()
Angabe nicht àndert.

p.x = p.y = p.z = 7.6;

Ich möchte also das Axis nicht schreiben.

Gruß Robert
 

Lesen sie die antworten

#1 Claus Reibenstein
08/07/2010 - 17:26 | Warnen spam
Robert Hartmann schrieb:

typedef union Point3D {
struct Axis {
double x;
double y;
double z;
} Axis;
double coord[3];
} Point3D;

[...]

p.x = p.y = p.z = 7.6;

Ich möchte also das Axis nicht schreiben.



Das geht in C nicht.

Gruß. Claus

Ähnliche fragen