私はμCのプログラミングだ、私はデータ構造を次ていますC(++)労働組合のデータ構造
typedef struct
{
RF12Head head;
typedef union
{
uint8_t raw[40];
typedef struct
{
node_id nodeId;
uint8_t hierachyDepth;
} MessageNodeFound;
} data;
} RF12Message;
A RF12Messageは、データ部分のヘッダーが含まれています。 今私は異なるメッセージ形式をしたいです。
私はこのような何かを行うことができるようにしたい:
RF12Message msg;
memset(&msg.data.raw, 0xEF, sizeof(msg.data.raw)); // fill in directly
//or indirectly:
msg.data.MessageNodeFound.nodeId = 3;
msg.data.MessageNodeFound.hierachyDepth = 2;
が、コンパイラ遠かったが、エラーがスローされます:「『RF12Message ::データ』は無効な使用」を、なぜ?
ありがとうございました!
データは、労働組合のtypedefで、変数ではないあなたのアイデアを与える必要があります... –