簡體   English   中英

聯合/結構數據類型和位字段引用速度

[英]Union/Structure datatype and bit field referencing speed

使用以下並集typedef,與MyPacket.Field.LB相比,訪問MyPacket.Byte.LB的速度是否有所不同?

typedef union       // create a union to assemble bytes into ints
{
int Packet;     //  contains an int
struct
    {
    char HB;
    char LB;    
    }Byte;
struct
    {
    unsigned    field1:4;
    unsigned    field2:2;
    unsigned    field3:1;
    unsigned    field4:1;
    unsigned    LB:8;
    }Field;
} packetunion;

packetunion MyPacket;

唯一可以肯定的方法是為多個編譯器優化設置編寫兩個版本的代碼,並在目標系統上對其進行概要分析。 如果您看到明顯的不同,我會感到非常驚訝。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM