2016-07-07 23 views
0

は、MATLABから受け取ったと私は構造体を必要とする:cで新しいパックド構造体を作成するために、構造体のいくつかのstructメンバーのみを使用する方法はありますか?このようなもの、私はいくつかのデータをデコードしようとしています

struct __attribute__((__packed__)) struct1{ 
    int a; 
    int b; 
    int c; 
} 

struct __attribute__((__packed__)) struct2{ 
    int a 
} 

struct __attribute__((__packed__)) mystruct{ 
    int struct1.a; 
    int struct1.b; 
    int struct2.a; 
    int struct1.c; 
} 

を私はMATLABからデータを復号化することができるように、このパック構造体を取得するための最良の方法は何ですか?私はCがstruct1とstruct2のオブジェクトなしでミステストを作成させるとは思わない。

+0

あなたが求めていることは明確ではありません。 –

+0

最も簡単な方法は、会員特有の方法です。オーバーラップするサブ構造が十分に大きければ、サブ構造を定義してそれらを1つの割り当てにコピーすることができます。 – tofro

答えて

0

使用する構造体に他の構造体を定義する必要はありません。必要なフィールドを必要なタイプだけに定義してください:

struct __attribute__((__packed__)) mystruct{ 
    int struct1_a; 
    int struct1_b; 
    int struct2_a; 
    int struct1_c; 
} 
関連する問題