私の質問は、奇妙なサイズのメモリのチャンクを指すことです。
struct
次のように宣言したとしましょう:
typedef struct{
int32 val1 : 29;
int32 val2 : 26;
char val3;
}MyStruct;
構造体で特定のビット フィールドを宣言することが望ましいと仮定しましょう (ビット フィールドを使用する理由は問題ではありません)。
これらのフィールドの 1 つを指すポインターを宣言したい場合は、次のようにします。
MyStruct test;
int32 *myPtr = &(test.val1);
これが「ビットフィールドのアドレスを取得することは許可されていません」というエラーを生成することを除いて。
私たちが望むと仮定すると、この方法でそれらのフィールドを指す方法はありますか? C++ はおそらくフィールドを次のバイト (この場合は 32 ビット) にパディングすることを知っています。