C + + χρησιμοποιεί ένα σύνολο συμβόλων να εκπροσωπεί ορισμένες προϋποθέσεις . Το ερωτηματικό ( ;) , για παράδειγμα , σημαίνει το τέλος μιας γραμμής κώδικα . Μια γραμμή κώδικα πρέπει να τελειώνει με ένα ερωτηματικό , ή θα υπάρξει ένα σφάλμα . Επιπλέον , μπλοκ κώδικα που αποτελούν μέρος του "αν " δηλώσεις των βρόχων πρέπει να κατοικούν μέσα σγουρά τιράντες . Αυτό το παράδειγμα δείχνει πως αυτά τα λάθη θα μπορούσε να καταλήξει σε κωδικό :
ενώ ( 1 )
( //μπλοκ του κώδικα πρέπει να εμφανίζονται σε αγκύλες , δεν παρένθεση
int i = 1 ?
εάν ( i % 2 == 0 ) {
εκτύπωσης i //όχι ερωτηματικό για να δείξει τέλος της δήλωσης
}
i + + ?
}
εικόνων όρους καταστάσεις Loops
Η
Βρόχος δομές σε C + + απαιτεί όρους δηλώσεις που επιστρέφουν Σωστό ή Λάθος αξίες που καθορίζουν εάν ή όχι ο βρόχος θα συνεχίσει ή όχι. Ωστόσο, η προϋπόθεση του βρόχου πρέπει να παράγει πραγματικά μια τιμή αλήθειας , είτε μέσω μια αριθμητική τιμή ή μέσω σύγκρισης των τιμών . Περαιτέρω, διάφορα βρόχοι απαιτούν διαφορετικές πληροφορίες . το ακόλουθο παράδειγμα εμφανίζει δύο λάθη που έγιναν χρησιμοποιώντας ένας βρόχος "while" και " για " βρόχο :
int i = 0 ?
ενώ ( 1 ) //1 ισούται αλήθεια σε C + + , αυτός ο βρόχος θα τρέξει στο άπειρο
{
για ( i ? i <= 5 ? i - ) //αυτός ο βρόχος δεν θα σταματήσει ποτέ , γιατί ποτέ δεν θα είναι μεγαλύτερη από 5
{
/* κάνουμε πράγματα * /
} }
Η Ασυμφωνία μεταξύ Μεταβλητή Τύπος και Τύπος δεδομένων
Η
C + + είναι μια έντονα δακτυλογραφημένη γλώσσα, που σημαίνει ότι οι προγραμματιστές πρέπει να δηλώσουν τον τύπο μιας μεταβλητής κατά τη δήλωση της μεταβλητής . μία μεταβλητή τύπου « ακέραιος » πρέπει να περιέχει έναν ακέραιο αριθμό και την αναθέσουν οποιοδήποτε άλλο είδος θα δημιουργήσει ένα σφάλμα . Σε αυτό το παράδειγμα , ορισμένες μεταβλητές του Τα διάφορα είδη έχουν τύπους δεδομένων που δεν ταιριάζουν :
int i = 2,5 //ανάθεση μιας κινητής υποδιαστολής σε ακέραιο
char h = " Hello" //ανάθεση ενός string σε ένα χαρακτήρα μεταβλητή
int j = " HI " //ανάθεση ενός string σε μια μεταβλητή ακέραιο
εικόνων Δείκτες και Αναφορές
Η
δείκτες είναι οι τύποι δεδομένων που αναφέρονται στο μια διεύθυνση στη μνήμη αντί να κατέχουν τα δεδομένα . Λόγω αυτής , δείκτες ουσιαστικά " σημείο για να " ένα μπλοκ της μνήμης , αντί να κατέχουν άμεσα τα δεδομένα. με τον όρο " dereferencing " το δείκτη ( χρησιμοποιώντας το σύμβολο "*" ) , ο προγραμματιστής μπορεί να έχει πρόσβαση . τα δεδομένα σε αυτή την μνήμη Ωστόσο , η διαφορά μεταξύ του δείκτη και την αξία που δείχνει να μπορεί να προκαλέσει σύγχυση , όπως στο ακόλουθο παράδειγμα :
int i = 3 ?
int * j = &i; //j τώρα δείχνει προς τη διεύθυνση του i
j = i ? //j τώρα δείχνει στη διεύθυνση μνήμης 3 , δεν περιέχει την τιμή 3
* j = i ? //ΤΩΡΑ είναι η μνήμη που αναφέρεται από j περιέχει την τιμή , 3 φωτογραφίες
Η
Πνευματικά δικαιώματα © Γνώση Υπολογιστών Όλα τα δικαιώματα κατοχυρωμένα