c data types
Μάθετε τα πάντα Τύποι δεδομένων σε C ++ με παραδείγματα.
Σε αυτό Ολοκληρωμένα εκπαιδευτικά σεμινάρια C ++ , θα συζητήσουμε τους τύπους δεδομένων στο C ++ σε αυτό το σεμινάριο.
Έχουμε ήδη δει αναγνωριστικά που χρησιμοποιούνται για την αναγνώριση διαφόρων οντοτήτων στο C ++ με το όνομα. Εκτός από τα αναγνωριστικά, γνωρίζουμε επίσης ότι οι πληροφορίες ή τα δεδομένα της μεταβλητής αποθήκευσης.
Για να συσχετίσουμε δεδομένα με τη μεταβλητή, πρέπει επίσης να γνωρίζουμε ποια δεδομένα θα συσχετίσουμε ακριβώς, δηλαδή αν οι μεταβλητές αποθηκεύουν μόνο αλφάβητα ή αριθμούς ή και τα δύο. Με άλλα λόγια, πρέπει να περιορίσουμε τα δεδομένα ή τις πληροφορίες που πρόκειται να αποθηκευτούν σε μια μεταβλητή.
Εδώ ακριβώς βρίσκεται ο τύπος δεδομένων στην εικόνα. Μπορούμε να πούμε ότι οι τύποι δεδομένων χρησιμοποιούνται για να πουν στη μεταβλητή τι είδους δεδομένα πρέπει να αποθηκεύει. Με βάση τον τύπο δεδομένων που έχει εκχωρηθεί σε μια μεταβλητή, το λειτουργικό σύστημα εκχωρεί μνήμη και αποφασίζει ποιος τύπος δεδομένων θα αποθηκευτεί στη μεταβλητή.
Τι θα μάθετε:
Τύποι δεδομένων
Το C ++ υποστηρίζει δύο τύπους δεδομένων για χρήση με τα προγράμματά του.
- Πρωτόγονοι / Τυπικοί τύποι δεδομένων
- Τύποι δεδομένων που καθορίζονται από τον χρήστη.
Δίνεται παρακάτω η εικονική αναπαράσταση των τύπων δεδομένων στο C ++.
Πρωτόγονοι ή τυπικοί τύποι δεδομένων
Οι πρωτόγονοι τύποι δεδομένων είναι οι ενσωματωμένοι τύποι, που παρέχει η γλώσσα C ++. Μπορούμε να τα χρησιμοποιήσουμε άμεσα για να δηλώσουμε οντότητες όπως μεταβλητές, σταθερές κ.λπ. Εναλλακτικά, μπορούμε επίσης να τις ονομάσουμε ως προκαθορισμένους τύπους δεδομένων ή τυπικούς τύπους δεδομένων.
Ακολουθούν οι διάφοροι πρωτόγονοι τύποι δεδομένων που υποστηρίζει το C ++ με τις αντίστοιχες λέξεις-κλειδιά τους:
- Integer => int
- Χαρακτήρας => char
- Floating Point => float
- Διπλό επιπλέον σημείο => διπλό
- Boolean => bool
- Άκυρο ή χωρίς αξία τύπο => άκυρο
- Ευρύς χαρακτήρας => wchar_t
Τύποι δεδομένων που καθορίζονται από τον χρήστη
Στο C ++ μπορούμε επίσης να ορίσουμε τους δικούς μας τύπους δεδομένων, όπως μια τάξη ή μια δομή. Αυτοί καλούνται τύποι καθορισμένοι από τον χρήστη.
Παρακάτω αναφέρονται διάφοροι τύποι δεδομένων που καθορίζονται από τον χρήστη στο C ++:
- Typedef
- Απαρίθμηση
- Κατηγορία ή αντικείμενο
- Δομή
Από αυτούς τους τύπους, ο τύπος δεδομένων κατηγορίας χρησιμοποιείται αποκλειστικά με αντικειμενοστραφή προγραμματισμό στο C ++.
Πρωτόγονοι τύποι δεδομένων
Ο παρακάτω πίνακας δείχνει όλους τους πρωτόγονους τύπους δεδομένων που υποστηρίζονται από το C ++ μαζί με τα διάφορα χαρακτηριστικά του.
Τύπος δεδομένων | Λέξη-κλειδί C ++ | Τύπος τιμής |
---|---|---|
Ευρύς χαρακτήρας | wchar_t | Χαρακτήρας συμπεριλαμβανομένων των συμβολοσειρών Unicode |
Χαρακτήρας | απανθρακώνω | Χαρακτήρας (τιμές ASCII) |
Ακέραιος αριθμός | int | Αριθμητικοί ακέραιοι αριθμοί |
Κυμαινόμενο σημείο | φλοτέρ | Δεκαδικές τιμές με μία ακρίβεια |
Δεκαδικό σημείο | διπλό | Τιμές κυμαινόμενου σημείου διπλής ακρίβειας |
Boolean | bool | Σωστό ή λάθος |
κενός | κενός | Αξία (χωρίς αξία) |
Τροποποιητές τύπου δεδομένων
Οι πρωτόγονοι τύποι δεδομένων που αποθηκεύουν διαφορετικές τιμές χρησιμοποιούν οντότητες που ονομάζονται τροποποιητές τύπων δεδομένων για να τροποποιήσουν το μήκος της τιμής που μπορούν να κρατήσουν.
Κατά συνέπεια, οι ακόλουθοι τύποι τροποποιητών δεδομένων υπάρχουν στο C ++:
- Υπογεγραμμένο
- Χωρίς υπογραφή
- Μικρός
- Μακρύς
Το εύρος των δεδομένων που αντιπροσωπεύεται από κάθε τροποποιητή εξαρτάται από τον μεταγλωττιστή που χρησιμοποιούμε.
Το παρακάτω πρόγραμμα παράγει τα διάφορα μεγέθη διαφορετικών τύπων δεδομένων.
#include using namespace std; int main() { cout<<'Primitive datatypes sizes: '< Παραγωγή:
Πρωτόγονα μεγέθη τύπων δεδομένων:
σύντομο int: 2 byte
σύντομο int: 2 byte
int: 4 byte
unsigned int: 4 byte
long int: 8 byte
unsigned long int: 8 byte
μεγάλη διάρκεια: 8 bytes
χωρίς υπογραφή μακράς διάρκειας: 8 byte
char: 1 byte
υπογεγραμμένο char: 1 byte
χωρίς υπογραφή char: 1 byte
float: 4 byte
διπλό: 8 byte
μακρύ διπλό: 16 bytes
wchar_t: 4 byte
Το στιγμιότυπο οθόνης για αυτήν την έξοδο δίνεται παρακάτω.
Όπως βλέπουμε, χρησιμοποιώντας το μέγεθος του χειριστή, μπορούμε να πάρουμε το μέγιστο μέγεθος δεδομένων που υποστηρίζει κάθε τύπος δεδομένων.
Όλοι αυτοί οι τύποι δεδομένων και τα αντίστοιχα μεγέθη τους μπορούν να ταξινομηθούν όπως παρακάτω.
Τύπος δεδομένων Πλάτος bit Εύρος σύντομο int 2 byte 32768 έως 32767 απανθρακώνω 1 byte 127 έως 127 ή 0 έως 255 χωρίς υπογραφή char 1 byte 0 έως 255 υπογεγραμμένο char 1 byte 127 έως 127 int 4 byte 2147483648 έως 2147483647 χωρίς υπογραφή int 4 byte 0 έως 4294967295 υπογεγραμμένο int 4 byte 2147483648 έως 2147483647 υπογεγραμμένο σύντομο int Εύρος 0 έως 65,535 υπέγραψε σύντομο int Εύρος 32768 έως 32767 μακρύ int 4 byte 2.147.483.647 έως 2.147.483.647 υπέγραψε μακρύ int 4 byte ίδιο με το long int χωρίς υπογραφή long int 4 byte 0 έως 4.294.967.295 φλοτέρ 4 byte +/- 3.4e +/- 38 (~ 7 ψηφία) διπλό 8 byte +/- 1.7e +/- 308 (~ 15 ψηφία) μακρύ διπλό 8 byte +/- 1.7e +/- 308 (~ 15 ψηφία) wchar_t 2 ή 4 byte 1 ευρύς χαρακτήρας
Αυτό αφορά όλους τους πρωτόγονους τύπους δεδομένων στο C ++. Τύποι δεδομένων που καθορίζονται από τον χρήστη
Αυτοί οι τύποι δεδομένων όπως προτείνει το ίδιο το όνομα καθορίζονται από τον ίδιο τον χρήστη. Καθώς ορίζονται από το χρήστη, μπορούν να προσαρμοστούν σύμφωνα με τις απαιτήσεις του προγράμματος.
Typedef
Χρησιμοποιώντας τη δήλωση typedef, δημιουργούμε ένα ψευδώνυμο ή άλλο όνομα για τον τύπο δεδομένων. Τότε μπορούμε να χρησιμοποιήσουμε αυτό το ψευδώνυμο για να δηλώσουμε περισσότερες μεταβλητές.
Για παράδειγμα, εξετάστε την ακόλουθη δήλωση στο C ++:
typedef int age;
Μέσω αυτής της δήλωσης, δημιουργήσαμε ένα ψευδώνυμο ηλικίας για τον τύπο δεδομένων int.
Επομένως, εάν θέλουμε να δηλώσουμε κάτι παρόμοιο, τότε μπορούμε να χρησιμοποιήσουμε το ψευδώνυμο αντί για τον τυπικό τύπο δεδομένων όπως φαίνεται παρακάτω:
age num_of_years;
Λάβετε υπόψη ότι το ψευδώνυμο είναι απλώς ένα άλλο όνομα για τον τυπικό τύπο δεδομένων, μπορεί να χρησιμοποιηθεί με παρόμοιο τρόπο όπως οι τυπικοί τύποι δεδομένων.
Απαρίθμηση
Η απαρίθμηση στο C ++ είναι ένας τύπος δεδομένων που καθορίζεται από το χρήστη και αποτελείται από ένα σύνολο τιμών με αντίστοιχες ακέραιες σταθερές για κάθε τιμή.
Για παράδειγμα, μπορούμε να δηλώσουμε τις ημέρες της εβδομάδας ως απαριθμημένο τύπο δεδομένων όπως φαίνεται παρακάτω:
enum daysOfWeek {Sunday, Monday, Tuesday, Wednesday, Thursday, Friday, Saturday};
Από προεπιλογή, οι ακέραιες σταθερές για καθεμία από τις τιμές enum ξεκινά με μηδέν. Έτσι, η «Κυριακή» έχει τιμή 0, η «Δευτέρα» έχει 1 και ούτω καθεξής.
Ωστόσο, μπορούμε επίσης να αλλάξουμε τις προεπιλεγμένες τιμές από την αρχή του ενδιάμεσου ως εξής:
enum daysOfWeek {Sunday, Monday, Tuesday=5, Wednesday, Thursday, Friday, Saturday};
Εδώ, η Κυριακή θα έχει τιμή 0, η Δευτέρα θα έχει τιμή 1 και η Τρίτη θα έχει τιμή 5 που έχουμε εκχωρήσει. Μετά την Τρίτη, οι υπόλοιπες τιμές θα έχουν 6, 7 και ούτω καθεξής σε συνέχεια της προηγούμενης τιμής (σε αυτήν την περίπτωση 5).
Ας χρησιμοποιήσουμε αυτό το enum που δηλώσαμε νωρίτερα στο ακόλουθο πρόγραμμα:
#include using namespace std; enum daysOfWeek {Sunday, Monday, Tuesday, Wednesday, Thursday, Friday, Saturday}; int main() { daysOfWeek today; today = Thursday; cout<<'This is day '< Παραγωγή:
Αυτή είναι η 4η ημέρα της εβδομάδας
Το στιγμιότυπο οθόνης για το ίδιο δίνεται παρακάτω
Το παραπάνω πρόγραμμα είναι αυτονόητο. Έχουμε ορίσει το enum και μετά δημιουργούμε τη μεταβλητή τύπου του για έξοδο την ημέρα της εβδομάδας.
Τάξη
Στο C ++, μπορούμε να ορίσουμε έναν ακόμη τύπο που ορίζεται από τον χρήστη και ονομάζεται 'Class'. Η τάξη δεν είναι παρά μια συλλογή αντικειμένων. Το Class λειτουργεί ως σχεδιάγραμμα για ένα αντικείμενο και χρησιμοποιώντας τον ορισμό της κατηγορίας μπορούμε να σχεδιάσουμε διάφορα προβλήματα σε πραγματικό χρόνο.
καλύτεροι ιστότοποι για λήψη βίντεο στο YouTube
Για παράδειγμα, σκεφτείτε μια τάξη με το όνομα «Μαθητής» που θα οριστεί ως εξής:
class student{ char* name; int age; public: void printDetails() { cout<<”Name: “<Μόλις ορίσουμε αυτήν την τάξη, μπορούμε να χρησιμοποιήσουμε το όνομα κλάσης για να δηλώσουμε μεταβλητές της κλάσης τύπου. Αυτές οι μεταβλητές της κατηγορίας τύπου δεν είναι παρά αντικείμενα.
Έτσι δηλώνουμε ένα αντικείμενο μαθητή τύπου ως εξής:
student s1; s1.printDetails();
Όπως φαίνεται παραπάνω, μπορούμε επίσης να αποκτήσουμε πρόσβαση στα μέλη αυτής της τάξης που είναι δημόσια. Θα δούμε τις κλάσεις και τα αντικείμενα λεπτομερώς όταν καλύπτουμε αντικειμενοστραφή προγραμματισμό στο C ++.
Δομή
Μια δομή στο C ++ είναι παρόμοια με αυτήν στο C>. Στην πραγματικότητα, η έννοια της δομής στο C ++ επιλέγεται άμεσα από τη γλώσσα C. Ως τάξη, η δομή είναι επίσης μια συλλογή μεταβλητών διαφορετικών τύπων δεδομένων. Αλλά η κλάση έχει τόσο μεταβλητές όσο και μεθόδους που λειτουργούν σε αυτές τις μεταβλητές ή μέλη όπως τις ονομάζουμε.
Οι δομές, από την άλλη πλευρά, έχουν μόνο μεταβλητές ως μέλη της.
Μπορούμε να ορίσουμε ένα άτομο δομής ως εξής χρησιμοποιώντας τη λέξη-κλειδί struct:
struct employee{ Char name(50); Float salary; Int empId; };
Μόλις οριστεί η δομή, μπορούμε να δηλώσουμε μια μεταβλητή τύπου struct ως εξής:
Employee emp;
Τότε μπορούμε να έχουμε πρόσβαση στα μέλη της δομής χρησιμοποιώντας τη μεταβλητή δομής και τον τελεστή πρόσβασης μέλους (dot Operator).
συμπέρασμα
Θα μάθουμε περισσότερα για τη δομή και την τάξη και τις διαφορές μεταξύ τους μόλις ξεκινήσουμε με τον αντικειμενοστραφή προγραμματισμό στο C ++.
Στο επερχόμενο σεμινάριό μας, θα διερευνήσουμε τις μεταβλητές C ++ και τις άλλες πτυχές της.
=> Δείτε τα εκπαιδευτικά σεμινάρια In-Depth C ++ εδώ
Συνιστώμενη ανάγνωση
- Τύποι δεδομένων Python
- Τύποι δοκιμών μετεγκατάστασης: Με σενάρια δοκιμής για κάθε τύπο
- Αφαίρεση δεδομένων σε C ++
- Top 10 Εργαλεία Επιστήμης Δεδομένων το 2021 για την εξάλειψη του προγραμματισμού
- Παράμετρος δεδομένων JMeter με χρήση μεταβλητών καθορισμένων από τον χρήστη
- 10+ καλύτερα εργαλεία συλλογής δεδομένων με στρατηγικές συλλογής δεδομένων
- Αντικειμενοστραφής προγραμματισμός στο C ++
- 10+ καλύτερα εργαλεία διαχείρισης δεδομένων για την κάλυψη των αναγκών δεδομένων σας το 2021