Οδηγός Μελέτης - Εισαγωγή στον Προγραμματισμό

Α20.1 · Μέγεθος δομής με πεδία bit

Διάλεξη 20, διαφάνεια 7 · Δυσκολία ★☆☆ · trace · Κεφάλαια: 20

Τι τυπώνει το παρακάτω κομμάτι κώδικα; Τι θα τύπωνε αν οι τρεις τύποι int γίνονταν char; Και αν, επιπλέον, αφαιρούσαμε τα : 1, : 3, : 4;

struct student_status {
  int registered : 1;
  int year : 3;
  int grade : 4;
};
printf("%zu\n", sizeof(struct student_status));

Υπόδειξη

Μετρήστε πόσα bits χρειάζονται συνολικά τα τρία πεδία και σκεφτείτε σε πόσες «μονάδες» του τύπου τους χωράνε. Χωρίς πεδία bit, κάθε μέλος πιάνει ολόκληρο τον τύπο του.

Αριθμός στον οδηγό: Α20.1 (στο κεφάλαιο) · Μόνιμο αναγνωριστικό: slides-lec20-bitfield-sizeof · Σύνδεσμος: https://progintro.github.io/study/questions/slides/slides-lec20-bitfield-sizeof.html · Markdown (GitHub)