Σπίτι Προσωπικά Οικονομικά Μεταβλητή ελέγχου για C Προγραμματισμός - ανδρείκελα

Μεταβλητή ελέγχου για C Προγραμματισμός - ανδρείκελα

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

Βίντεο: Τύποι μεταβλητών - Μαθήματα προγραμματισμού σε C #2 2024

Βίντεο: Τύποι μεταβλητών - Μαθήματα προγραμματισμού σε C #2 2024
Anonim

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

Πληκτρολόγηση σε δυσπιστία

Πότε μια μεταβλητή float δεν είναι float; Όταν είναι τυπωμένο σε int, βέβαια. Αυτό το τέχνασμα είναι εφικτό στο C χρησιμοποιώντας το typecast. Για παράδειγμα:

(int) χρέος

Στην προηγούμενη γραμμή, η μεταβλητή float debt είναι typecast σε τιμή int. Το int σε παρενθέσεις κατευθύνει τον μεταγλωττιστή για να αντιμετωπίσει την αξία του χρέους ως ακέραιο αριθμό.

Γιατί θα θέλατε να το κάνετε αυτό;

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

Αυτό δεν είναι σωστό

#include int main () {int a, b; float c; printf ("Εισάγετε την πρώτη τιμή:"); scanf ("% d", & a); printf ("Εισάγετε τη δεύτερη τιμή:"); scanf ("% d", & b); c = a / b; εκτύπωση ("% d /% d =%. 2fn", a, b, c) επιστροφή (0)?}

Άσκηση 1: Πληκτρολογήστε τον πηγαίο κώδικα από το That's Not Right στον επεξεργαστή σας. Κατασκευάστε και τρέξτε.

Εδώ είναι ένα δείγμα τρέχει με την είσοδο με έντονους χαρακτήρες:

Εισάγετε την πρώτη τιμή: 3 Input η δεύτερη τιμή: 2 3/2 = 1. 00

Προφανώς, είναι λάθος το 3 ÷ 2 να δουλεύει με το 1. 50. Αν ο υπολογιστής λέει ότι είναι 1.00, ο υπολογιστής πρέπει να είναι σωστός.

Ή ίσως ο υπολογιστής απλώς συγχέεται επειδή στη γραμμή 12 του πηγαίου κώδικα διαιρούνται δύο τιμές int και το αποτέλεσμα αντιστοιχεί σε ένα float. Αυτό δεν λειτουργεί εντούτοις, διότι διαιρώντας έναν ακέραιο με έναν ακέραιο στον C αποδίδει έναν ακέραιο ως αποτέλεσμα.

Η τιμή 1 είναι η πλησιέστερη ακέραια τιμή στο 1. 50. Έτσι, αν και ο υπολογιστής είναι λάθος, κάνει ακριβώς αυτό που του είπε να κάνει.

Άσκηση 2: Τροποποιήστε τον πηγαίο κώδικα, αλλάζοντας τη Γραμμή 12 για να διαβάσετε

c = (float) a / (float) b;

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

Εισάγετε την πρώτη τιμή: 3 Εισάγετε τη δεύτερη τιμή: 2 3/2 = 1. 50

Καλύτερη. Αυτό συμβαίνει γιατί typecast μεταβλητές a και b στην εξίσωση, που επιτρέπει προσωρινά το μεταγλωττιστή να τα αντιμετωπίζουν ως αριθμούς κινητής υποδιαστολής. Ως εκ τούτου, το αποτέλεσμα είναι αυτό που πρέπει να είναι.

Πώς να δημιουργήσετε νέα πράγματα με typedef

Μπορείτε να πάρετε πολλά προβλήματα με τη λέξη-κλειδί typedef.Μπορεί να εκθέσει τις κανονικές λέξεις C και τους χειριστές από τον συνεκτικό εαυτό τους σε κάθε είδους κακό.

ΟΙ ΠΕΡΙΠΤΩΣΕΙΣ TYPEDEF

#include typedef int stinky; stinky κύρια () {stinky α = 2; printf ("Όλοι το γνωρίζουν"); printf ("% d +% d =% dn", α, α, α + α). Επιστροφή (0);}

Στο Περιεχόμενο typedef , η δήλωση typedef στη Γραμμή 3 ορίζει τη λέξη stinky να είναι η ίδια με τη λέξη int. Οπουδήποτε μπορείτε να χρησιμοποιήσετε το int στον κώδικα, μπορείτε να χρησιμοποιήσετε την λέξη stinky, όπως φαίνεται στις γραμμές 5 και 7.

Άσκηση 3: Χρησιμοποιήστε τον πηγαίο κώδικα από τους κινδύνους typedef < για να δημιουργήσετε ένα νέο πρόγραμμα, αποδεικνύοντας ότι ένας μεταβλητός τύπος μεταβλητού τύπου είναι ο ίδιος με έναν int. Κατασκευάστε και τρέξτε. Το παράδειγμα στο "The Perils of

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

ΔΗΜΙΟΥΡΓΙΑ ΔΙΑΡΘΡΩΣΗΣ ΠΑΡΑΔΟΣΙΑΚΟΣ ΤΡΟΠΟΣ

struct id {char first [20]; char τελευταίο [20]?}? ημερομηνία δομής {int μήνα; int day? int year}}. struct human {όνομα συμβολαίου struct; ημερομηνία δημιουργίας ημερομηνίας γενεθλίων?};

Χρησιμοποιώντας το

t ypedef για να ορίσετε μια δομή, εμφανίζεται ο τρόπος με τον οποίο θα πραγματοποιηθούν οι δηλώσεις εάν πληκτρολογήσατε τις δομές: USING

TYPEDEF > typedef struct id {char πρώτη [20]. char τελευταίο [20]?} προσωπικό? typedef δομή ημερομηνία {int μήνα? int day? int έτος?} ημερολόγιο? struct human {όνομα; ημερολόγιο γενέθλια?}; Σε αυτήν την καταχώρηση, το αναγνωριστικό δομής πληκτρολογείται στο όνομα προσωπικά. Αυτό δεν είναι ένα μεταβλητό όνομα. είναι ένα typedef. Είναι το ίδιο με το να λέμε, "Όλες οι αναφορές στο id του struct είναι τώρα οι ίδιοι με το όνομα προσωπικό. "

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

Μια δομή που έχει τοποθετηθεί

#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)?}

Άσκηση 4

:

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

και πρόεδρος. όνομα. τελευταία . Βεβαιωθείτε ότι έχετε αντιστοιχίσει τιμές σε αυτές τις μεταβλητές στον κωδικό σας και ότι εμφανίζονται τα αποτελέσματα. Άσκηση 5 :

Τροποποιήστε τον πηγαίο κώδικα από το έργο που δημιουργείτε στην Άσκηση 4 για να χρησιμοποιήσετε το typedef, όπως φαίνεται στην ενότητα Χρήση t ypedef . Κατασκευάστε και τρέξτε. Μπορούμε να υποστηρίξουμε ότι η χρήση του typedef δεν κάνει τον κώδικα σας πιο σαφή από ό, τι χρησιμοποιούσατε απλά καλά ονόματα μεταβλητών και καλά μορφοποιημένο κείμενο. Για παράδειγμα, δεν μπορείτε να χρησιμοποιήσετε το typedef απλά επειδή δεν θέλετε να θυμάστε τι έχετε ορίσει. Αλλά θα συναντήσετε άλλο κώδικα που χρησιμοποιεί typedef. Μην αφήσετε να σας ξεγελάσει. Το πραγματικό πλεονέκτημα της χρήσης typedef με μια δομή είναι, πιθανώς, ότι σας εξοικονομεί από την πληκτρολόγηση της λέξης struct πάρα πολλές φορές.

Μεταβλητή ελέγχου για C Προγραμματισμός - ανδρείκελα

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

Πώς να αλλάξετε τη ρύθμιση ισορροπίας λευκού σε ετικέτες Canon EOS 70D

Πώς να αλλάξετε τη ρύθμιση ισορροπίας λευκού σε ετικέτες Canon EOS 70D

Χρησιμοποιώντας το Ο έλεγχος εξισορρόπησης λευκού στο Canon EOS 70D σας μπορεί εύκολα και γρήγορα να διορθώσει προβλήματα χρώματος. Οι διαθέσιμες ρυθμίσεις ισορροπίας λευκού απεικονίζονται με τα σύμβολα που εμφανίζονται στον παρακάτω πίνακα. Μπορείτε να δείτε την τρέχουσα ρύθμιση στην οθόνη Ρυθμίσεις λήψης, όπως φαίνεται στο παρακάτω σχήμα. Για να προσαρμόσετε τη ρύθμιση, έχετε ...

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

Προετοιμασία αντιγράφου TIFF ψηφιακής εικόνας για δημοσίευση - ανδρεικέλες

Προετοιμασία αντιγράφου TIFF ψηφιακής εικόνας για δημοσίευση - ανδρεικέλες

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

Εξάγοντας το περίγραμμα επιλογής του ψηφιακού σας επεξεργαστή εικόνας - ανδρείκελα

Εξάγοντας το περίγραμμα επιλογής του ψηφιακού σας επεξεργαστή εικόνας - ανδρείκελα

Η πρώτη προσπάθεια. Αναμείνετε να βελτιώσετε το περίγραμμα επιλογής σας τουλάχιστον λίγο. Μπορείτε να βελτιώσετε το περίγραμμα σας με διάφορους τρόπους: Αντίστροφη περιγράμματος επιλογής: Απλά χρησιμοποιήστε την εντολή Invert (ή την αντίστοιχη εντολή του προγράμματος). Προσθέστε σε περίγραμμα επιλογής: ...

Επιλογή από τις άκρες της ψηφιακής εικόνας - ανδρείκελα

Επιλογή από τις άκρες της ψηφιακής εικόνας - ανδρείκελα

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

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

Πώς να χρησιμοποιείτε το παράθυρο μητρώου του QuickBooks 2010 - dummies

Πώς να χρησιμοποιείτε το παράθυρο μητρώου του QuickBooks 2010 - dummies

Για να εργαστείτε ευκολότερα με το παράθυρο του Μητρώου και να ελέγξετε τον τρόπο εμφάνισής του: Το κουμπί Μετάβαση: Εμφανίζει το παράθυρο διαλόγου Μετάβαση (Go To). Αυτό το παράθυρο διαλόγου σάς επιτρέπει να αναζητήσετε μια συναλλαγή στο παράθυρο "Εγγραφή". Για παράδειγμα, μπορείτε να αναζητήσετε ...

Πώς να εργάζεστε με έναν υπάρχοντα προϋπολογισμό σε QuickBooks - dummies

Πώς να εργάζεστε με έναν υπάρχοντα προϋπολογισμό σε QuickBooks - dummies

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

Πώς να χρησιμοποιείτε τα κουτιά παραθύρων αναφορών του QuickBooks - dummies

Πώς να χρησιμοποιείτε τα κουτιά παραθύρων αναφορών του QuickBooks - dummies

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