掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
構造体の中の構造体で定義した、空の配列はどのような使い道があるのですか? (ID:71016)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
初めまして、いつも参考にさせてもらっております。 DirectShowのソースを見ていて疑問に思ったのですが このような構造体があります。 typedef struct _avioldindex { FOURCC fcc; // 'idx1' DWORD cb; // size of this structure -8 struct _avioldindex_entry { DWORD dwChunkId; DWORD dwFlags; #ifndef AVIIF_LIST #define AVIIF_LIST 0x00000001 #define AVIIF_KEYFRAME 0x00000010 #endif #define AVIIF_NO_TIME 0x00000100 #define AVIIF_COMPRESSOR 0x0FFF0000 // unused? DWORD dwOffset; // offset of riff chunk header for the data DWORD dwSize; // size of the data (excluding riff header size) } aIndex[]; // size of this array } AVIOLDINDEX; 質問1:このstruct _avioldindex_entryの空の配列aIndex[]はどのような目的でこういった定義になっているのでしょうか? 質問2:そもそも何故構造体の中だと、空の配列が定義できるのですか? 質問3:簡単にしてみたのですが、どのような使い道があるかわかりません typedef struct s{ struct ss{ char c; } ass[]; } S; S x; // sizeof(S);は1バイト S::ss y; y.c = 'C'; x.ass[0] = y; 環境はWinXP SP3 VC++6.0です。 宜しくお願いいたします。
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2020 Takeshi Okamoto All Rights Reserved.