bit-fields

    0熱度

    1回答

    我有一個枚舉爲: C# [Flags] public enum FieldStyle { FS_ShadeWords = 0x00000001, FS_WithWords = 0x00000002, FS_WithLetters = 0x00000004, FS_MMDD_YYMM = 0x00000008, FS_T2WordsUnder

    2熱度

    1回答

    任何人都可以告訴我爲什麼斷言失敗? 僅供參考:我正在使用gcc 4.6.1在64位Linux機器上編譯此代碼。 typedef union cpu_register { uint64 _64; uint32 _32; uint16 _16; uint16 _8l : 8, _8h : 8; } __attribute__((packed))

    2熱度

    3回答

    是否有可能元帥含位字段到C#結構C風格的結構,否則你就必須把它編組爲一個基本類型,然後做位掩碼? E.g.我想從C風格的結構,這樣的名帥: struct rgb16 { unsigned int R : 4; unsigned int G : 5; unsigned int B : 4; } 元帥它到是這樣的: [StructLayout(LayoutKind.

    1熱度

    1回答

    我編這個(gcc編譯器):顯示爲 #include <stdio.h> main() { struct { a:1; b:2; } t; t.b=6; t.a=2; printf("%d %d",t.a,t.b); } 錯誤:之前 預期說明符限定符列表「一」 爲什麼當無名的數據變量被當作INT它是需要默認。請解

    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; char LB

    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; Foo f;

    1熱度

    2回答

    我有一個表int值用作位域(其中每個位是標誌)。 現在我想用一個二元運算聚集他們(在我的情況OR),這樣: SELECT 1 AS bitfield INTO #TABLE UNION ALL SELECT 1 + 2 + 8 + 32 UNION ALL SELECT 2 + 128 UNION ALL SELECT 2 + 32 SELECT AND_AGGR(bitfield)

    0熱度

    1回答

    如何設置/取消設置類似於以下內容的枚舉值。使用GCC,我得到這個惱人的警告: test.c:37: warning: negative integer implicitly converted to unsigned type test.c:39: warning: negative integer implicitly converted to unsigned type test.c:41

    1熱度

    1回答

    我想執行以下 static Type2 MyData; MyData.Base.Data = (0b0000000000010100); 爲靜態初始化。例如, static Type2 MyData = (typecast)(0b0000000000010100); 我該怎樣強調這一點? 下面是Type1和Type2的類型定義 typedef union { UINT16 D

    8熱度

    4回答

    我已經創建了一個方法將int轉換爲位域(在列表中)並且它可以工作,但我確定有更優雅的解決方案 - 我只是盯着它爲了長久。 我很好奇,你會如何將int轉換爲list中表示的位域? def get(self): results = [] results.append(1 if (self.bits & 1) else 0) results.append(1 if (se