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

Α19.8 · Το μέγεθος του struct student

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

struct student {
  char first_name[128];
  char last_name[128];
  unsigned int year;
  double grade;
};

Τι θα τυπώσει το ακόλουθο, όταν το πρόγραμμα μεταγλωττιστεί με gcc -m32;

printf("%zu\n", sizeof(struct student));

Ποιο είναι, γενικά, το μέγεθος του struct student;

Υπόδειξη

Αθροίστε τα μεγέθη των πεδίων με τη σειρά της δήλωσης. Για το γενικό ερώτημα, σκεφτείτε αν ο μεταγλωττιστής είναι υποχρεωμένος να τα τοποθετήσει κολλητά (τι αλλάζει για ένα double σε σύστημα 64 bit;).

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