bit-fields

    8

    2答えて

    私はこのような構造を持つビットフィールドを使用していた、 struct { unsigned int is_static: 1; unsigned int is_extern: 1; unsigned int is_auto: 1; } flags; は今、私は、これは労働組合で行うことができるかどうかを確認するために疑問に思ったので、私は、のような u

    2

    1答えて

    誰もがアサートに失敗した理由を教えてください。 参考:64ビットLinuxマシンでgcc 4.6.1を使用してこれをコンパイルします。 typedef union cpu_register { uint64 _64; uint32 _32; uint16 _16; uint16 _8l : 8, _8h : 8; } __attribute_

    2

    3答えて

    ビットフィールドを含むCスタイルの構造体をC#構造体にマーシャリングすることは可能ですか、それとも基本型にマーシャルしてからビットマスクを行う必要がありますか? など。 public struct Rgb16 { public ushort Value; // two byte value that internally contain structure R(4):G(5):B(4)

    1

    1答えて

    私はこの(GCCコンパイラ)コンパイル:無名のデータ変数をintとして取られたときにそれが必要とされるのはなぜ「」 前に指定-修飾子リストを期待 :だっ示し #include <stdio.h> main() { struct { a:1; b:2; } t; t.b=6; t.a=2; printf("%d %d"

    0

    1答えて

    以下のユニオン型のtypedefを使用すると、MyPacket.Byte.LBとMyPacket.Field.LBを比較すると速度に違いはありますか? typedef union // create a union to assemble bytes into ints { int Packet; // contains an int struct { char HB

    5

    4答えて

    ビットフィールド(全部で32ビット幅)を持つ構造体を持っていて、32ビットの変数を持っています。私は構造体に変数の値を代入しようとすると、私はエラーました: error: conversion from ‘uint32_t {aka unsigned int}’ to non-scalar type ‘main()::CPUID’ requested. struct CPUIDregs

    7

    2答えて

    -Wconversionは、g ++でビットフィールドに値を代入すると警告が表示されます。 ソースファイル: struct Foo { public: unsigned int x : 4; unsigned int y : 9; unsigned int z : 17; }; int main(int, char**) { int a = 12

    1

    2答えて

    intの値が(各ビットがフラグである)ビットフィールドとして使用されているテーブルを持っています。 ように、今、私は(私の場合にはOR)バイナリ操作でそれらを集約したいと思います:これを行うには良い方法だろうどのような値171 につながる SELECT 1 AS bitfield INTO #TABLE UNION ALL SELECT 1 + 2 + 8 + 32 UNION ALL SE

    0

    1答えて

    次のようなものに対して、どのようにenum値を設定/設定解除しますか。 GCCを使用して、私はこの迷惑な警告を受ける: test.c:37: warning: negative integer implicitly converted to unsigned type test.c:39: warning: negative integer implicitly converted to uns

    3

    4答えて

    struct A { int a:2; int b:3; int c:3; }; int main() { struct A p = {2,6,1}; printf("\n%d\n%d\n%d\n",p.a,p.b,p.c); return 0; } 出力は: -2、-2,1 のCコンパイラおよびC++コンパイラに上記のコードの出力であろうか? なぜですか?