miyuriの日記: CとC++で 5
日記 by
miyuri
この辺で思い出した事。
#pragma pack(push,1)
struct hoge
{
int length;
unsigned char body[0];
};
#pragma pack(pop)
みたいなので、うわああああっていうのが。
C++だと、こういう場合の要素数0の配列はNGっていうね。
で、結局書き方を変える、と。
struct hoge
{
int length;
unsigned char *body;
};
C99/C11 (スコア:0)
C99なら必須、C11ならオプションで可変長配列を構造体の最後に入れることはできるね
C++はどうかな。
M-FalconSky (暑いか寒い)
Re:C99/C11 (スコア:2)
-- Takehiro TOMINAGA // may the source be with you!
Re:C99/C11 (スコア:2)
こういう可変長配列は、スマートだけどダメなやり方なのかなと思っていたり。
Re:C99/C11 (スコア:2)
C99はWindowsばっかりだと、全然縁が無かったり。
Re: (スコア:0)
Windowsなら(MSVCなら)独自拡張 [microsoft.com]でC99と同様の
unsigned char body[];
をサポートしてるよ。