Speicher-layout von der Vereinigung verschiedener Größe-Mitglied?

typedef union epoll_data
{
  void        *ptr;
  int          fd;
  __uint32_t   u32;
  __uint64_t   u64;
} epoll_data_t;

Hier int und __uint32_t sind 4 Byte,während die anderen 8 bytes.

Wenn wir fd zu einem int,liegt Sie auf den ersten 4 bytes oder die letzten 4 bytes,oder hängt es ab, endianness?

Irgendeinem Grund sehr geschätzt wird.

  • In der Praxis kürzere Typen immer am Anfang, aber ich bin mir nicht sicher, ob oder wo dies dargelegt wird...
InformationsquelleAutor cpuer | 2011-06-15
Schreibe einen Kommentar