Giriş
Açıklaması şöyle.
Örnek - C++
Şöyle yaparız
Şöyle yaparız.
Açıklaması şöyle.
The packed attribute specifies that a variable or structure field should have the smallest possible alignment—one byte for a variable
Not : Bu kodlar portable değil. gcc aynı zamanda Microsoft kodlarını da okuyabiliyor. Portable kod için #pragma pack() şeklinde kullanırız.
Şöyle yaparız
struct __attribute__((__packed__)) BitsField
{
// Logic values
uint8_t vesselPresenceSw: 1;
uint8_t drawerPresenceSw: 1;
uint8_t pumpState: 1;
uint8_t waterValveState: 1;
uint8_t steamValveState: 1;
uint8_t motorDriverState: 1;
// Unused
uint8_t unused_0: 1;
uint8_t unused_1: 1;
};
Örnek - CŞöyle yaparız.
struct packet {
uint16_t mfg;
uint8_t type;
uint16_t devid;
} __attribute__((packed));
Örnek - 1 Byte
Hiç yorum yok:
Yorum Gönder