C++ Μεταβλητές και τύποι: Int, Char, Float, Double, String & Bool

Μεταβλητές σε C++

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

Βασικοί τύποι μεταβλητών σε C++

Εδώ είναι οι βασικοί τύποι C++ μεταβλητές:

Εντ .:

Ένας ακέραιος είναι ένα αριθμητικό κυριολεκτικό (που συνδέεται με αριθμούς) χωρίς κλασματικό ή εκθετικό μέρος. Παράδειγμα. 120, -90, κ.λπ.

Double:

Είναι μια τιμή κινητής υποδιαστολής διπλής ακρίβειας. Παράδειγμα: 11.22, 2.345

Απανθρακώνω:

Ένας κυριολεκτικός χαρακτήρας δημιουργείται περικλείοντας έναν μόνο χαρακτήρα μέσα σε μεμονωμένα εισαγωγικά. Για παράδειγμα: 'a', 'm', 'F', 'P', '}' κ.λπ.

Φλοτέρ:

Ένα κυριολεκτικό κινητής υποδιαστολής είναι ένα αριθμητικό literal που έχει είτε κλασματική μορφή είτε μορφή εκθέτη. Για παράδειγμα: 1.3, 2.6

Χορδές κυριολεκτικά:

Μια κυριολεκτική συμβολοσειρά είναι μια ακολουθία χαρακτήρων που περικλείονται σε διπλά εισαγωγικά. Για παράδειγμα: «Πώς είσαι;»

Bool:

Διατηρεί την τιμή Boolean true ή false.

Κανόνες δήλωσης μεταβλητών σε C++

Ακολουθούν ορισμένοι συνήθεις κανόνες για την ονομασία μιας μεταβλητής:

  • A C++ Το όνομα της μεταβλητής μπορεί να έχει μόνο αλφάβητα, αριθμούς και κάτω παύλες.
  • A C++ Το όνομα της μεταβλητής δεν μπορεί να ξεκινά με αριθμό.
  • Τα ονόματα των μεταβλητών δεν πρέπει να ξεκινούν με κεφαλαία.
  • Ένα όνομα μεταβλητής που χρησιμοποιείται σε C++ δεν μπορεί να είναι λέξη-κλειδί. Για παράδειγμα, το int είναι μια λέξη-κλειδί που χρησιμοποιείται για να δηλώσει ακέραιους αριθμούς.
  • A C++ Το όνομα της μεταβλητής μπορεί να ξεκινά με μια υπογράμμιση. Ωστόσο, δεν θεωρείται καλή πρακτική.

C++ Μεταβλητοί τύποι δεδομένων

C++ ορίζει ένα ολόκληρο σύνολο πρωτόγονων τύπων

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

Τα Διαχωριστικά αριθμητικοί τύποι περιλαμβάνει χαρακτήρες, ακέραιους, Boolean τιμές και αριθμούς κινητής υποδιαστολής. Αριθμητικός τύπος αν χωριστεί περαιτέρω σε 2 κατηγορίες

  1. Τύποι κινητής υποδιαστολής. Το float (ή αιωρούμενος τύπος) αντιπροσωπεύει δεκαδικούς αριθμούς. Το πρότυπο IEEE καθορίζει έναν ελάχιστο αριθμό σημαντικών ψηφίων. Οι περισσότεροι μεταγλωττιστές παρέχουν συνήθως μεγαλύτερη ακρίβεια από την καθορισμένη ελάχιστη. Συνήθως, τα floats αντιπροσωπεύονται με 32 bit, τα διπλάσια σε 64 bit και τα long διπλάσια σε 96 ή 128 bit.
  2. Ολοκληρωτικοί τύποι (τα οποία περιλαμβάνουν χαρακτήρες, ακέραιους και τύπους Boolean). ο Boolean Ο τύπος έχει μόνο δύο τύπους τιμών: True ή False. Υπάρχουν αρκετές δεξαμενή τύπους, οι περισσότεροι από τους οποίους υπάρχουν για να υποστηρίξουν τη διεθνοποίηση. Ο πιο βασικός τύπος χαρακτήρα είναι char. Ένας χαρακτήρες έχει το ίδιο μέγεθος με ένα μόνο byte μηχανής που σημαίνει ένα μόνο byte.

Τα Διαχωριστικά Ολοκληρωτικοί τύποι μπορεί να είναι υπογεγραμμένο ή ανυπόγραφο.

Υπογεγραμμένος τύπος: Αντιπροσωπεύουν αρνητικούς ή θετικούς αριθμούς (συμπεριλαμβανομένου του μηδενός). Σε έναν υπογεγραμμένο τύπο, το εύρος πρέπει να διαιρείται ομοιόμορφα μεταξύ των τιμών +ve και -ve. Έτσι, ένας υπογεγραμμένος char 8-bit θα έχει τιμές από –127 έως 127.

Ανυπόγραφος τύπος: Σε έναν τύπο χωρίς υπογραφή, όλες οι τιμές είναι >= 0. Ένας ανυπόγραφος χαρακτήρας 8 bit μπορεί να περιέχει από 0 έως 255 (συμπεριλαμβανομένων και των δύο).

C++ Μεταβλητοί τύποι δεδομένων

Όνομα μεταβλητής ή αναγνωριστικά

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

Τα αναγνωριστικά πρέπει

  • ξεκινούν είτε με γράμμα είτε με κάτω παύλα ('_').
  • Και έχουν διάκριση πεζών-κεφαλαίων. Τα κεφαλαία και τα πεζά γράμματα είναι διακριτά:

// ορίζει τέσσερις διαφορετικές μεταβλητές int

int guru99, gurU99, GuRu99, GURU99;

Τα Διαχωριστικά C++ Η γλώσσα έχει κρατήσει ορισμένα ονόματα για τη χρήση της.

Όνομα μεταβλητής ή αναγνωριστικά

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

  • Ένα αναγνωριστικό θα πρέπει να δίνει τουλάχιστον κάποια ένδειξη της σημασίας του.
  • Τα ονόματα των μεταβλητών είναι συνήθως πεζά—guru99, όχι Guru99 ή GURU99.
  • Οι κλάσεις που ορίζουμε συνήθως ξεκινούν με κεφαλαίο γράμμα.
  • Τα αναγνωριστικά που περιέχουν πολλές λέξεις πρέπει να διακρίνουν οπτικά κάθε λέξη. Για παράδειγμα, guru99_website όχι guru99website.

C++ Δήλωση και ορισμός μεταβλητής

Μια δήλωση μιας μεταβλητής κάνει γνωστό ένα όνομα στο πρόγραμμα στο πεδίο στο οποίο έχει οριστεί. Παράδειγμα:

int a=5;
int b;
char c='A'; 
int a,b;
a=b=1000;
List initialization
int a(5);
int b{5};

Const Qualifier in C++

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

Σε αυτήν την περίπτωση, χρησιμοποιήστε τη λέξη-κλειδί const

const int bufSize = 512;    // input buffer size

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

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

const int i = get_size();  // ok: initialized at run time
const int j = 42;          // ok: initialized at compile time
const int k;               // error: k is uninitialized const
int i = 42;
const int ci = i;    	   // ok: the value in i is copied into ci 

Πεδίο εφαρμογής μεταβλητών σε C++

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

#include <iostream>	
int main()	
{	
    int sum = 0;	
    // sum values from 1 through 10 inclusive	
    for (int val = 1; val <= 10; ++val)	
        sum += val;  // equivalent to sum = sum + val	
    cout << "Sum of 1 to 10 inclusive is "<< sum <<endl;	
    return 0;	
}	 

Αυτό το πρόγραμμα ορίζει 3 ονόματα, δηλαδή κύριο, άθροισμα και val. Χρησιμοποιεί το όνομα χώρου ονομάτων std, μαζί με δύο άλλα ονόματα από αυτόν τον χώρο ονομάτων—cout και endl.

  • Το όνομα της συνάρτησης "main" ορίζεται έξω από τα σγουρά σιδεράκια. Το όνομα της συνάρτησης main—όπως τα περισσότερα άλλα ονόματα που ορίζονται εκτός συνάρτησης—έχει καθολικό εύρος. Που σημαίνει ότι μόλις δηλωθεί, ονόματα που βρίσκονται στο παγκόσμιας εμβέλειας είναι προσβάσιμα σε όλο το πρόγραμμα.
  • Το μεταβλητό άθροισμα ορίζεται εντός του πεδίου εφαρμογής του μπλοκ που είναι το σώμα της κύριας συνάρτησης. Είναι προσβάσιμη από το σημείο δήλωσης και σε όλο το υπόλοιπο σώμα της κύριας λειτουργίας. Ωστόσο, όχι έξω από αυτό. Αυτό σημαίνει ότι το μεταβλητό άθροισμα έχει εμβέλεια μπλοκ.
  • Η μεταβλητή val ορίζεται στο πεδίο της δήλωσης "for". Μπορεί εύκολα να χρησιμοποιηθεί σε αυτή τη δήλωση αλλά όχι αλλού στην κύρια συνάρτηση. Εχει τοπικής εμβέλειας.

Ένθετο πεδίο

Το εύρος μπορεί να περιέχει άλλα πεδία. Το περιεχόμενο (ή ένθετο) πεδίο αναφέρεται ως εσωτερικό πεδίο. Το πεδίο που περιέχει είναι το εξωτερικό πεδίο.

#include <iostream>	
using namespace std;	
// Program for illustration purposes only: It is bad style for a function	
// to use a global variable and also define a local variable with the same name	
int reused = 42;  // reused has global scope	
int main()	
{	
    int unique = 0; // unique has block scope	
    // output #1: uses global reused; prints 42 0	
    cout << reused << " " << unique << endl;	
    int reused = 0; // new, local object named reused hides global reused	
    // output #2: uses local reused; prints 0 0	
    cout << reused << " " << unique << endl;	
    // output #3: explicitly requests the global reused; prints 42 0	
    cout << ::reused << " " << unique << endl;	
    return 0;	
}	 

Έξοδος #1 εμφανίζεται πριν από τον τοπικό ορισμό της επαναχρησιμοποίησης. Έτσι, αυτή η έξοδος

δήλωση είναι αυτή που χρησιμοποιεί το όνομα που επαναχρησιμοποιήθηκε που ορίζεται σε καθολική εμβέλεια. Αυτή η δήλωση βγαίνει

42 0

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

0 0

Έξοδος #3 παρακάμπτει τους προεπιλεγμένους κανόνες οριοθέτησης χρησιμοποιώντας το χειριστή πεδίου. Η παγκόσμια εμβέλεια δεν έχει όνομα. Έτσι, όταν ο τελεστής εμβέλειας (::) έχει μια άδεια αριστερή πλευρά. Το ερμηνεύει ως αίτημα για ανάκτηση του ονόματος στη δεξιά πλευρά του παγκόσμιου εύρους. Έτσι, η έκφραση χρησιμοποιεί τα καθολικά επαναχρησιμοποιημένα και εξόδους

42 0

Μετατροπή τύπου μεταβλητής

Μια μεταβλητή ενός τύπου μπορεί να μετατραπεί σε άλλη. Είναι γνωστό ως "Μετατροπή τύπου". Ας δούμε τους κανόνες για τη μετατροπή διαφορετικών C++ μεταβλητοί τύποι:

Η αντιστοίχιση non-bool σε μια μεταβλητή bool αποδίδει false εάν η τιμή είναι 0 και true διαφορετικά.

bool b = 42;            // b is true

Η αντιστοίχιση ενός bool σε έναν από τους άλλους αριθμητικούς τύπους αποδίδει 1 εάν το bool είναι true και 0 εάν το bool είναι false.

bool b = true;
int i = b;              // i has value 1

Η αντιστοίχιση μιας τιμής κινητής υποδιαστολής σε μια μεταβλητή τύπου int αποδίδει την τιμή που περικόπτεται. Η τιμή που αποθηκεύεται είναι το τμήμα πριν από την υποδιαστολή.

int i = 3.14;               // i has value 3

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

Int i=3;
double pi = i;          // pi has value 3.0

Εάν προσπαθήσουμε να αντιστοιχίσουμε μια τιμή εκτός εύρους σε μια μεταβλητή ανυπόγραφου τύπου, το αποτέλεσμα είναι το υπόλοιπο της τιμής %(modulo)

Για παράδειγμα, ένας τύπος χαρακτήρων 8-bit χωρίς υπογραφή μπορεί να περιέχει τιμές από 0 έως 255, συμπεριλαμβανομένων. Η αντιστοίχιση μιας τιμής εκτός αυτού του εύρους θα έχει ως αποτέλεσμα ο μεταγλωττιστής να εκχωρήσει το υπόλοιπο αυτής της τιμής modulo 256. Επομένως, με την παραπάνω λογική, η εκχώρηση του -1 σε έναν 8-bit χωρίς υπογραφή char δίνει σε αυτό το αντικείμενο την τιμή 255.

unsigned char c = -1;   // assuming 8-bit chars, c has value 255

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

signed char c2 = 256;   // assuming 8-bit chars, the value of c2 is undefined

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

int i = 42;
if (i) // condition will evaluate as true
i = 0; 

Εάν αυτή η τιμή = 0, τότε η συνθήκη είναι ψευδής. Όλες οι άλλες (μη μηδενικές) τιμές αποδίδουν αληθές. Με την ίδια έννοια, όταν χρησιμοποιούμε ένα bool σε μια αριθμητική παράσταση, η τιμή του μετατρέπεται πάντα είτε σε 0 είτε σε 1. Ως αποτέλεσμα, η χρήση ενός bool σε μια αριθμητική παράσταση είναι συνήθως σχεδόν σίγουρα λανθασμένη.

Προσοχή: Μην αναμειγνύετε υπογεγραμμένους και ανυπόγραφους τύπους

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

Για παράδειγμα, σε μια αριθμητική έκφραση όπως

x* y

Αν το x είναι -1 και το y είναι 1, και αν και τα δύο x και y είναι int, τότε η τιμή είναι, όπως αναμένεται, -1.

Εάν το x είναι int και το y είναι χωρίς υπογραφή, τότε η τιμή αυτής της παράστασης εξαρτάται από το πόσα bit έχει ένας ακέραιος στη μηχανή μεταγλώττισης. Στον υπολογιστή μας, αυτή η έκφραση αποδίδει 4294967295.

Εγγραφή μεταβλητών

Οι μεταβλητές καταχωρητών έχουν ταχύτερη πρόσβαση σε σύγκριση με τις μεταβλητές μνήμης. Έτσι, μεταβλητές που χρησιμοποιούνται συχνά στο α C++ το πρόγραμμα μπορεί να μπει σε καταχωρητές χρησιμοποιώντας κάντε ΕΓΓΡΑΦΗ λέξη-κλειδί. Η λέξη-κλειδί καταχωρητή λέει στον μεταγλωττιστή να αποθηκεύσει τη δεδομένη μεταβλητή σε έναν καταχωρητή. Είναι επιλογή του μεταγλωττιστή αν θα το βάλει σε μητρώο ή όχι. Γενικά, οι ίδιοι οι μεταγλωττιστές κάνουν διάφορες βελτιστοποιήσεις που περιλαμβάνουν την τοποθέτηση ορισμένων από τις μεταβλητές στον καταχωρητή. Δεν υπάρχει όριο στον αριθμό των μεταβλητών καταχωρητή στο α C++ πρόγραμμα. Αλλά ο μεταγλωττιστής μπορεί να μην αποθηκεύει τη μεταβλητή σε έναν καταχωρητή. Αυτό συμβαίνει επειδή η μνήμη μητρώου είναι πολύ περιορισμένη και χρησιμοποιείται πιο γενικά από το λειτουργικό σύστημα.

Για να ορίσετε:

register int i;

Σχόλια

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

  • Σχόλια μιας γραμμής είναι αυτά που ξεκινούν με // και συνεχίζουν μέχρι το τέλος της γραμμής. Εάν ο τελευταίος χαρακτήρας σε μια γραμμή σχολίων είναι \ τότε το σχόλιο θα συνεχιστεί στην επόμενη γραμμή.
  • Σχόλια πολλαπλών γραμμών είναι αυτά που ξεκινούν με /* και τελειώνουν με */.
/* This is a comment */
/* C++ comments can  also 
* span multiple lines 
*/

Ακολουθίες διαφυγής

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

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

Τα Διαχωριστικά C++ γλώσσα προγραμματισμού ορίζει διάφορες ακολουθίες διαφυγής:

Τι κάνει; Χαρακτήρας
Νέα γραμμή \n
Κάθετη καρτέλα \v
Αντίστροφη κάθετο \\
Επιστροφή μεταφοράς \r
Οριζόντια καρτέλα \t
Backspace \b
Ερωτηματικό \?
Φόρμουλα \f
Ειδοποίηση (καμπάνα) \a
Double παραθέτω \ "
Μονό απόσπασμα \ '

Χρησιμοποιούμε μια ακολουθία διαφυγής σαν να ήταν ένας μεμονωμένος χαρακτήρας:

cout << '\n';        // prints a newline
cout << "\tguru99!\n";   // prints a tab followed by "guru99!" and a newline 

Μπορούμε επίσης να γράψουμε γενικευμένες ακολουθίες διαφυγής \x ακολουθούμενες από ένα ή περισσότερα δεκαεξαδικά ψηφία. Ή χρησιμοποιούμε ένα \ ακολουθούμενο από ένα, ή δύο ή τρία οκταδικά ψηφία. Η γενικευμένη ακολουθία διαφυγής αντιπροσωπεύει την αριθμητική τιμή του χαρακτήρα. Μερικά παραδείγματα (υποθέτοντας το σύνολο χαρακτήρων Latin-1):

\7 (bell)    \12 (newline)      \40 (blank)
\0 (null)    \115 ('M')         \x4d ('M') 

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

cout << "Hi \x4dO\115!\n";  // prints Hi MOM! followed by a newline
cout << '\115' << '\n';     // prints M followed by a newline 

Σύνοψη

  • A C++ μεταβλητή μας παρέχει μια επώνυμη δυνατότητα αποθήκευσης.
  • C++ τύποι μεταβλητών: int, double, δεξαμενή, float, string, bool, κ.λπ.
  • Το περιεχόμενο (ή ένθετο) πεδίο αναφέρεται ως εσωτερικό εύρος και το πεδίο εφαρμογής είναι το εξωτερικό πεδίο.
  • Μια μεταβλητή ενός τύπου μπορεί να μετατραπεί σε άλλη. Είναι γνωστό ως "Μετατροπή τύπου".
  • Οι μεταβλητές καταχωρητών έχουν ταχύτερη πρόσβαση σε σύγκριση με τις μεταβλητές μνήμης.
  • Τα σχόλια είναι τα τμήματα του κώδικα που αγνοούνται από τον μεταγλωττιστή.
  • Ορισμένοι χαρακτήρες, όπως το backspace και οι χαρακτήρες ελέγχου, δεν έχουν ορατή εικόνα.