[Armadillo:04936] Armadillo-210の構造体について

Masakatsu Yamada email@hidden
2010年 2月 1日 (月) 17:29:25 JST


世話になります山田と申します。

早速ですが、構造体の実サイズについて、確認がございます。

構造体の配列を共有メモリに展開するプログラムのデバック中に、実サイズより多くの領域を使用している事が解かり
以下のサンプル作りを実行すると、4バイトと表示しました。
struct test{
    char   ChNo[1];
}w_mem;

int main(int argc, char* argv[])
{
 printf("sizeof w_mem= %d\n",sizeof(w_mem));
 return 0;
}

ネットで調べたところ、以下のように __attribute__ ((packed))を構造体属性に付けると防止できる記載があったので、試したところサイズは適正になったのですが、
struct test{
    char   ChNo[1];
}w_mem __attribute__ ((packed));

この対応は適切なのでしょうか?
お忙しい中申し訳ありませんが、ご教授ください。

よろしくお願いします。 




armadillo メーリングリストの案内