タグ

ブックマーク / chalow.net (1)

  • アライメント問題

    アライメント問題 2001-07-12-3 [Programming] とあるCプログラムがある。構造体のメンバをポインタ+オフセットで扱っ ている。メンバ間のパディングは 0 バイトであると仮定している。この ようなプログラムを、現状(パディング 0) を維持したまま gcc (Linux) でコンパイルするにはどうしたらよいのだろうか? マニュアル、info、Web を調べた結果、gcc で構造体のパディングを制御 する方法は、"__atrribute__" を用いる方法と "#pragma" を用いる方法 があることが分かった (コマンドラインオプションでなんとかする方法が あればいいんだけどなあ)。以下にサンプルを示す。 サンプルプログラム struct aa { char a; int b; }; struct bb { char a; int b __attribute__((

    アライメント問題
  • 1