ho due identici (ma con nomi diversi) strutture C:Casting una struttura C in un altro
typedef struct {
double x;
double y;
double z;
} CMAcceleration;
typedef struct {
double x;
double y;
double z;
} Vector3d;
Ora voglio assegnare una variabile CMAcceleration ad una variabile Vector3D (copiare l'intero struct). Come posso fare questo?
Ho provato quanto segue ma ottenere questi errori di compilazione:
vector = acceleration; // "incompatible type"
vector = (Vector3d)acceleration; // "conversion to non-scalar type requested"
Certo che posso ricorrere a impostare singolarmente tutti i membri:
vector.x = acceleration.x;
vector.y = acceleration.y;
vector.z = acceleration.z;
ma che sembra piuttosto scomodo.
Qual è la soluzione migliore?
non puoi semplicemente typedef (diciamo typedef struct CMAcceleration Vector3D)? Ooops, qualcuno aveva già sottolineato ... – Nyan