Σπίτι Προσωπικά Οικονομικά Βασικά στοιχεία παγκόσμιων μεταβλητών σε προγραμματισμό C - ανδρείκελα

Βασικά στοιχεία παγκόσμιων μεταβλητών σε προγραμματισμό C - ανδρείκελα

Πίνακας περιεχομένων:

Βίντεο: Zeitgeist Addendum 2024

Βίντεο: Zeitgeist Addendum 2024
Anonim

Μερικές φορές στον προγραμματισμό C, μια μεταβλητή πρέπει να είναι σαν την υπηρεσία κινητής τηλεφωνίας: διαθέσιμη παντού. Η μεταβλητή μπορεί επίσης να χρησιμοποιηθεί από οποιαδήποτε λειτουργία ανά πάσα στιγμή. Αυτός ο τύπος μεταβλητής μπορεί να ονομαστεί μια μεταβλητή καθολική . Θα μπορούσε να ονομαστεί μια παγκόσμια μεταβλητή. Αλλά στο C, αναφέρεται ως μεταβλητή global .

Πώς να χρησιμοποιήσετε τις συνολικές μεταβλητές

Οι συνολικές μεταβλητές επιλύουν συγκεκριμένα προβλήματα κάνοντας τη δήλωση μεταβλητών καθολική. Με αυτόν τον τρόπο, οποιαδήποτε λειτουργία οπουδήποτε στο πρόγραμμα μπορεί να έχει πρόσβαση στη μεταβλητή. Δεν χρειάζεται να περάσει ή να επιστραφεί από μια λειτουργία.

Η ανάκτηση της ηλικίας σας γύρω σας δείχνει πώς δηλώνεται και χρησιμοποιείται μια παγκόσμια μεταβλητή. Οι συνολικές μεταβλητές ηλικία και επιπλέουν επηρεάζονται από τις δύο λειτουργίες. Μπορούν να μεταβιβαστούν σε αυτές τις λειτουργίες, αλλά και οι δύο τιμές δεν μπορούν να επιστραφούν. (Οι λειτουργίες C επιστρέφουν μόνο μία τιμή.) Επομένως, η σφαιρική μεταβλητή χρησιμοποιείται ως λύση.

ΟΡΓΑΝΩΣΗ ΤΗΣ ΗΛΙΚΙΑΣ ΣΑΣ

#περιλαμβάνει κενό μισό (κενό); κενό δύο φορές (κενό); int age? πλωτά πόδια? int main () {printf ("Πόσο χρονών είσαι:"); scanf ("% d", & ηλικία); printf ("Πόσο ψηλά είσαι (σε ​​πόδια):"); scanf ("% f", & πόδια); printf ("Είσαι% d ετών και% 1f πόδια ψηλό n", ηλικία, πόδια)? Ήμισυ(); εις διπλούν(); printf ("Αλλά δεν είστε πραγματικά% d ετών ή%. 1f πόδια ψηλά. n", ηλικία, πόδια)? επιστροφή (0);} κενό μισό (άκυρο) {float a, h; a = (πλωτή) ηλικία / 2. 0; printf ("Η μέση ηλικία σας είναι% 1f. n", a); h = πόδια / 2. 0; printf ("Το ήμισυ του ύψους σας είναι% 1f. n", h);} κενό δύο φορές (άκυρο) {age * = 2; printf ("Δύο φορές την ηλικία σας είναι% d. n", ηλικία). πόδια * = 2. printf ("Δύο φορές το ύψος σας είναι% 1fn", πόδια),}

Η γραμμή 6 δηλώνει την ηλικία και την μεταβλητή float πόδια . Αυτές είναι παγκόσμιες μεταβλητές επειδή δηλώνονται εκτός οποιασδήποτε λειτουργίας, εκεί πάνω στο #include, #define και prototyping land. Οι μεταβλητές στη συνέχεια χρησιμοποιούνται σε κάθε λειτουργία. Οι τιμές τους είναι προσβάσιμες σε όλο τον κώδικα. Ακόμη και όταν οι τιμές αυτές αλλάζουν στη συνάρτηση twice (), η κύρια () λειτουργία χρησιμοποιεί τις νέες τιμές.

Λάβετε υπόψη ότι δύο εκθέσεις printf () στη λειτουργία main () τυλίγουν το κείμενό τους στο να ρίχνουν την ηλικία σας γύρω. Δεν χρειάζεται να ανασυστήσετε αυτές τις δηλώσεις σε έναν επεξεργαστή κειμένου. απλά πληκτρολογήστε τα όλα σε μια γραμμή.

Άσκηση 1

: Πληκτρολογήστε τον πηγαίο κώδικα για την ανάγνωση της ηλικίας σας στο editor σας, δημιουργώντας ένα νέο πρόγραμμα. Κατασκευάστε και τρέξτε. Μην είστε τεμπέλης για τη χρήση παγκόσμιων μεταβλητών! Εάν μπορείτε να περάσετε μια τιμή σε μια λειτουργία, κάντε το! Είναι σωστό. Πολλοί αναρίθμητοι προγραμματιστές δηλώνουν όλες τις μεταβλητές τους παγκοσμίως για να "λύσουν το πρόβλημα."Αυτό είναι παραπλανητικό και ακατάλληλο.

Τα καλά παραδείγματα παγκόσμιων μεταβλητών περιλαμβάνουν πληροφορίες που πρέπει να γνωρίζουν όλες οι λειτουργίες του προγράμματος, όπως πληροφορίες χρηστών ή εάν είστε συνδεδεμένοι ή αν το κείμενο εμφανίζεται ή κρύβεται. Σε αυτή την περίπτωση, εξετάστε το ενδεχόμενο να κάνετε αυτές τις μεταβλητές γενικές.

Πώς να δημιουργήσετε μια μεταβλητή παγκόσμιας δομής

Ένα καλύτερο παράδειγμα χρήσης μιας παγκόσμιας μεταβλητής και μιας κατάστασης όπου οι μεταβλητές είναι καθολικά απαραίτητες είναι όταν περνάτε μια δομή σε μια συνάρτηση. Σε αυτή την περίπτωση, πρέπει να δηλώσετε τη δομή ως παγκόσμια, ώστε όλες οι λειτουργίες να μπορούν να έχουν πρόσβαση σε μεταβλητές αυτού του τύπου δομής.

Μην αφήνετε το τεράστιο μήκος του Passing a Structure σε μια λειτουργία να σας εκφοβίσει! Τα περισσότερα από τα "πραγματικά" προγράμματα που γράφετε τελικά θα είναι πολύ μακρύτερα!

ΠΑΡΟΥΣΙΑΣΗ ΔΟΜΗΣΗΣ ΣΕ ΛΕΙΤΟΥΡΓΙΑ

#include #include #include #define ΜΕΓΕΘΟΣ 5 struct bot {int xpos; int ypos;}; δομή bot bot initialize (struct bot b); int main () {δομή rob robots [SIZE]; int x; σύντομος (μη υπογεγραμμένος) χρόνος (NULL)). Για να περάσουμε μια δομή σε μια συνάρτηση, η δομή πρέπει να δηλωθεί σε παγκόσμιο επίπεδο, κάτι που συμβαίνει μεταξύ των Γραμμών 7 και 10. Αυτό πρέπει να συμβεί ακόμα και προτού η λειτουργία είναι πρωτότυπη, η οποία λαμβάνει χώρα στη Γραμμή 12.

Η συνάρτηση initialize () εκτελείται από τις Γραμμές 30 έως 41. Η δομή μεταβιβάζεται στη συνάρτηση και επιστρέφει.Σημειώστε ότι η μεταβλητή δομής πρέπει να οριστεί πλήρως ως όρισμα.Στη γραμμή 30, η συνάρτηση δίνεται στο όνομα της μεταβλητής 

b

στο εσωτερικό της συνάρτησης Η εντολή επιστροφής στη Γραμμή 40 μεταβιβάζει τη δομή πίσω στη λειτουργία κλήσης. Άσκηση 2

:

Βιδώστε το θάρρος σας στο σημείο κολλήματος και πληκτρολογήστε όλες αυτές τις γραμμές του πηγαίου κώδικα από την Μετάβαση μιας Δομής σε μια Λειτουργία στον επεξεργαστή σας Δημιουργία και εκτέλεση Η έξοδος δείχνει πώς πέρασε η συστοιχία δομών (ένα στοιχείο κάθε φορά) σε μια λειτουργία, τροποποιημένη στο func και στη συνέχεια επέστρεψε.

Βασικά στοιχεία παγκόσμιων μεταβλητών σε προγραμματισμό C - ανδρείκελα

Η επιλογή των συντακτών

Εξαρτήματα ηλεκτρονικών: Ενισχυτές ανοιχτού βρόχου

Εξαρτήματα ηλεκτρονικών: Ενισχυτές ανοιχτού βρόχου

Οι πιο βασικές ηλεκτρονικές χρήσεις ενός ενισχυτή Op είναι ως ενισχυτής. Εάν συνδέσετε μια πηγή εισόδου σε έναν από τους ακροδέκτες εισόδου και γειώσετε τον άλλο ακροδέκτη εισόδου, εμφανίζεται μια ενισχυμένη έκδοση του σήματος εισόδου στο εξωτερικό τερματικό. Μια σημαντική ιδέα στα κυκλώματα op-amp ...

Ηλεκτρονικά Στοιχεία: Δημοφιλή Op Amp Ενσωματωμένα Κυκλώματα - Dummy

Ηλεκτρονικά Στοιχεία: Δημοφιλή Op Amp Ενσωματωμένα Κυκλώματα - Dummy

Για την οικοδόμηση ενός πραγματικού ηλεκτρονικού κυκλώματος χρησιμοποιώντας Op-amp, φυσικά, θα πρέπει να χρησιμοποιήσετε ένα πραγματικό ενισχυτή op. Ευτυχώς, τα ενσωματωμένα ολοκληρωμένα κυκλώματα (IC) είναι άφθονα και σχεδόν όλα τα καταστήματα που πωλούν ηλεκτρονικά εξαρτήματα πωλούν διάφορους τύπους φθηνών IC-ενισχυτών. Το πιο δημοφιλές op-amp IC είναι το LM741, το οποίο έρχεται ...

Ηλεκτρονικά Συστατικά: Κύκλοι ταλαντωτών - ανδρείκελοι

Ηλεκτρονικά Συστατικά: Κύκλοι ταλαντωτών - ανδρείκελοι

. Η ακριβής κυματομορφή που παράγεται εξαρτάται από τον τύπο του κυκλώματος που χρησιμοποιείται για τη δημιουργία του ταλαντωτή. Ένα από τα συνηθέστερα χρησιμοποιούμενα κυκλώματα ταλαντωτών είναι κατασκευασμένο από ένα ζεύγος τρανζίστορ που είναι εφοδιασμένα για να εναλλάσσονται και να σβήνουν εναλλάξ. Αυτός ο τύπος κυκλώματος είναι ...

Η επιλογή των συντακτών

Ασκήσεις για ανδρείκελα Κατάρτιση για ανδρείκελα Εξάσκηση - ανδρείκελα

Ασκήσεις για ανδρείκελα Κατάρτιση για ανδρείκελα Εξάσκηση - ανδρείκελα

Η ασήμαντη εκπαίδευση είναι ένα σημαντικό βήμα στην ανάπτυξη των παιδιών. Ως γονέας, θα πρέπει να αναγνωρίσετε τα σημάδια ότι το παιδί σας είναι έτοιμο για την ομιλία της τουαλέτας, να ξεκινήσει μια διαδικασία ασήμαντης κατάρτισης, να συνεχίσει τη διαδικασία και να αναγνωρίσει πότε το παιδί σας είναι σχεδόν εκεί. Κατά τη διάρκεια της διαδρομής, πρέπει να σιγουρευτείτε ότι το παιδί σας ξέρει ...

Εκπαίδευση για παιδιά με αναπηρίες - ανδρείκελα

Εκπαίδευση για παιδιά με αναπηρίες - ανδρείκελα

Παιδιά, ανάλογα με την αναπηρία. Μπορεί να χρειαστεί να παρέχετε στηρίγματα υψηλής τεχνολογίας που διευκολύνουν την κίνηση από τον περιπατητή ή την αναπηρική καρέκλα στην τουαλέτα (δείτε την ενότητα "Εργασία με ειδικό εργαλείο" σε αυτό το άρθρο.) Από την άλλη πλευρά, το παιδί σας μπορεί να ...

Υποδηλώνουν ότι το παιδί σας είναι έτοιμο για ασήμαντη εκπαίδευση - ανδρείκελα

Υποδηλώνουν ότι το παιδί σας είναι έτοιμο για ασήμαντη εκπαίδευση - ανδρείκελα

Την ημέρα που κάθε γονιός επιθυμεί, αλλά δεν μπορείτε να βιάσετε τη διαδικασία. Περιμένετε τα σημάδια ότι το παιδί σας είναι έτοιμο να αντιμετωπίσει αυτή τη μεγάλη πρόκληση. Παρακολουθήστε τα σημεία στην παρακάτω λίστα. οι πρώτες πέντε είναι απολύτως απαραίτητες: μένει ξηρό τουλάχιστον δύο ώρες παίρνει Bummed από υγρό ή ...

Η επιλογή των συντακτών

Πώς να χρησιμοποιήσετε τη φαντασία σας για να χαλαρώσετε το σώμα σας για διαλογισμό - Dummies

Πώς να χρησιμοποιήσετε τη φαντασία σας για να χαλαρώσετε το σώμα σας για διαλογισμό - Dummies

Αναδυόμενο πεδίο της ιατρικής μυαλού-σώματος υπενθυμίζει στους ανθρώπους - και γιόγκι και σοφοί έχουν πει για χιλιετίες - το σώμα σας, το μυαλό σας και η καρδιά σας αποτελούν ένα ενιαίο και αδιάσπαστο σύνολο. Όταν οι σκέψεις σας συνεχίζουν να σφύζουν από την ανησυχία σας, το σώμα σας αποκρίνεται με τη σύσφιξη και την τάνυση, ειδικά σε ορισμένες σημαντικές θέσεις ...

Πώς να χρησιμοποιήσετε την προσοχή για τη διαχείριση του πόνου

Πώς να χρησιμοποιήσετε την προσοχή για τη διαχείριση του πόνου

Πόνος είναι κάτι που θα αντιμετωπίσει κάποιος σε κάποιο σημείο . Η προσοχή μπορεί να σας βοηθήσει να προσεγγίσετε πόνο με υγιεινό τρόπο. Ο οξύς πόνος είναι ένας αιχμηρός πόνος που διαρκεί για μικρό χρονικό διάστημα, μερικές φορές ορίζεται ως λιγότερο από 12 εβδομάδες. Η ιατρική είναι αρκετά καλή για τη θεραπεία του οξέος πόνου. Ο χρόνιος πόνος είναι ο πόνος που διαρκεί ...

Βελτίωση των σχέσεών σας - ανδρείκεS

Βελτίωση των σχέσεών σας - ανδρείκεS

Σχέσεις - είτε με την οικογένεια, τους φίλους ή τους εραστές; Και δεν έχει σημασία πόσο χαρούμενος και ευχαριστημένος είστε με τις σημαντικές σχέσεις στη ζωή σας, υπάρχει πάντα περιθώριο βελτίωσης. Οι σχέσεις, όπως όλες οι διεργασίες, επίσης καταλήγουν και ρέουν και σας παρουσιάζουν προκλήσεις. Εδώ είναι μερικές εξαιρετικές τεχνικές για να σας βοηθήσουμε ...