次のエントリ: (C++)メンバ関数のポインタでエラー [c]
構造体のパディングをつめる
2005-12-08-1 / カテゴリ: [programming][c] / [permlink]
「pack プラグマ」を使う
[2005-12-04-1]の続き
テストコード書いてみたが、エンディアン関係??でサクっとは base64 変換できねぇ...(@Intel pentium M)
[2005-12-04-1]の続き
struct fromdata { unsigned char first; unsigned char second; unsigned char third; }; #pragma pack(push, 1) struct todata { unsigned first: 6; unsigned second: 6; unsigned third: 6; unsigned forth: 6; }; #pragma pack(pop) (以下略)これで結果が
from: 3 to: 3になった。
#pragma pack(n)これで、それ以降の構造体・共用体のパディングに適用される
#pragma pack(push, n) #pragma pack(pop)(push,n)で、以降の構造体・共用体のパディングを n を基準にし、(pop)で元にもどす
テストコード書いてみたが、エンディアン関係??でサクっとは base64 変換できねぇ...(@Intel pentium M)
次のエントリ: (C++)メンバ関数のポインタでエラー [c]
2013 : 01 02 03 04 05 06 07 08 09 10 11 12
2012 : 01 02 03 04 05 06 07 08 09 10 11 12
2011 : 01 02 03 04 05 06 07 08 09 10 11 12
2010 : 01 02 03 04 05 06 07 08 09 10 11 12
2009 : 01 02 03 04 05 06 07 08 09 10 11 12
2008 : 01 02 03 04 05 06 07 08 09 10 11 12
2007 : 01 02 03 04 05 06 07 08 09 10 11 12
2006 : 01 02 03 04 05 06 07 08 09 10 11 12
2005 : 01 02 03 04 05 06 07 08 09 10 11 12
2004 : 01 02 03 04 05 06 07 08 09 10 11 12
最終更新時間: 2013-05-02 16:12