Πίνακας περιεχομένων:
- Πώς να τοποθετήσετε δομές σε δομές σε προγραμματισμό C
- Πώς να περάσετε μια δομή σε μια συνάρτηση στον προγραμματισμό C
Βίντεο: Week 6 2024
Οι δομές είναι ίσως ο πιο περίεργος τύπος μεταβλητής στη γλώσσα προγραμματισμού C. Τα δύο βήματα που απαιτούνται για τη δημιουργία τους είναι ασυνήθιστα, αλλά η μέθοδος dot της αναφοράς ενός μέλους μιας δομής φαίνεται να αποβάλλει πάντα τους αρχικούς προγραμματιστές. Αν νομίζετε ότι, εκτός από τα δύο αυτά ζητήματα, οι δομές δεν θα μπορούσαν να αποκοπούν, είναι εσφαλμένα εσφαλμένα.
Πώς να τοποθετήσετε δομές σε δομές σε προγραμματισμό C
Είναι αλήθεια ότι μια δομή διατηρεί μεταβλητές γλώσσας Γ. Είναι επίσης αλήθεια ότι μια δομή είναι μια μεταβλητή γλώσσας C. Επομένως, προκύπτει ότι μια δομή μπορεί να κρατήσει μια άλλη δομή ως μέλος. Μην αφήσετε αυτό τον τύπο παράξενο σκέψης να σας συγχέει. Αντ 'αυτού, βεβαιωθείτε για το παράδειγμα που παρουσιάζεται στην A Nested Structure.
Μια δομή που έχει τοποθετηθεί
#include #include int main () {struct date {int month; int day? int year}}. struct human {char όνομα [45]; ημερομηνία δημιουργίας ημερομηνίας γενεθλίων?}; δομή του ανθρώπινου προέδρου. strcpy (όνομα προέδρου, "George Washington"). Πρόεδρος. γενέθλια. μήνα = 2. Πρόεδρος. γενέθλια. ημέρα = 22; Πρόεδρος. γενέθλια. έτος = 1732; εκτύπωση ("% s γεννήθηκε σε% d /% d /% dn", πρόεδρος, όνομα, πρόεδρος, ημερομηνία γενέθλια, μήνας, πρόεδρος. επιστροφή (0)?}
Μια νημωμένη δομή δηλώνει δύο τύπους δομών: ημερομηνία στη Γραμμή 6 και ανθρώπινη στη Γραμμή 12. Στο πλαίσιο της δήλωσης της ανθρώπινης δομής, στη Γραμμή 15 βλέπετε την μεταβλητή γενεθλίων . Αυτός είναι ο τρόπος με τον οποίο μια δομή γεννιέται μέσα σε μια άλλη.
Η γραμμή 17 δημιουργεί μεταβλητή ανθρώπινης δομής, πρόεδρος . Ο υπόλοιπος κώδικας συμπληρώνει τα μέλη της δομής με δεδομένα. Η μέθοδος προσπέλασης στα μέλη της ένθετης δομής εμφανίζεται στις γραμμές 20 έως 22.
Χρησιμοποιούνται οι ονομασίες μεταβλητών της δομής. όχι το όνομα που χρησιμοποιείται για να δηλώσει τη δομή.
Άσκηση 1 : Πληκτρολογήστε τον πηγαίο κώδικα από A Inested Structure στον επεξεργαστή σας. Δημιουργήστε και εκτελέστε το πρόγραμμα.
Άσκηση 2 : Αντικαταστήστε το μέλος στην ανθρώπινη δομή με μια ένθετη δομή. Ονομάστε το όνομα της δομής και ονομάστε το με δύο μέλη, τους πίνακες char, πρώτο και τελευταίο, για την αποθήκευση του ονόματος και του επωνύμου ενός ατόμου. Εάν κάνετε τα πάντα σωστά, η αναφορά στο όνομα του προέδρου θα είναι ο πρόεδρος των μεταβλητών . όνομα. πρώτος και πρόεδρος. όνομα. τελευταία . Βεβαιωθείτε ότι έχετε αντιστοιχίσει τιμές σε αυτές τις μεταβλητές στον κωδικό σας και ότι εμφανίζονται τα αποτελέσματα.
Πώς να περάσετε μια δομή σε μια συνάρτηση στον προγραμματισμό C
Ως ένας τύπος μεταβλητής, είναι τελείως δυνατό για μια λειτουργία να τρώει μια δομή και να το βήχει.Ωστόσο, αυτή η κατάσταση απαιτεί να δηλωθεί η δομή ως παγκόσμια μεταβλητή. Αυτό συμβαίνει επειδή αν δηλώσετε μια δομή εντός μιας συνάρτησης και το main () είναι μια συνάρτηση, ο ορισμός είναι διαθέσιμος μόνο σε αυτή τη λειτουργία.
Επομένως, η δήλωση πρέπει να γίνει σε παγκόσμιο επίπεδο έτσι ώστε να είναι διαθέσιμη σε όλες τις λειτουργίες του κώδικα.