Ειδικός χαρακτήρας (\t) σε C++

Eidikos Charakteras T Se C



Στη C++, οι ακολουθίες διαφυγής παρέχουν έναν τρόπο ενσωμάτωσης των ειδικών χαρακτήρων σε μια συμβολοσειρά που δεν μπορεί να πληκτρολογηθεί απευθείας λόγω ορισμένων συντακτικών διενέξεων. Για παράδειγμα, σκεφτείτε πώς μπορείτε να αναπαραστήσετε μια οριζόντια καρτέλα μέσα σε μια συμβολοσειρά. Εδώ μπαίνει στο παιχνίδι η ακολουθία διαφυγής '\t', εισάγοντας μια οριζόντια καρτέλα σε μια εισαγωγή κειμένου. Η ακολουθία διαφυγής '\t' προσθέτει μια οριζόντια καρτέλα στη συμβολοσειρά, παρέχοντας έναν βολικό τρόπο εισαγωγής μιας συνεπούς απόστασης. Είναι ιδιαίτερα χρήσιμο για τη μορφοποίηση μιας εξόδου στις εφαρμογές της κονσόλας ή για την ευθυγράμμιση του κειμένου. Σε αυτόν τον οδηγό, θα εξερευνήσουμε τη λειτουργικότητα της ακολουθίας διαφυγής '\t' στη C++ με απλά, κατανοητά και χρήσιμα παραδείγματα για να κάνουμε την εφαρμογή της σαφή και κατανοητή.

Κατανόηση των ακολουθιών διαφυγής

Οι ακολουθίες διαφυγής στη C++ επιτρέπουν στους χαρακτήρες που εκτελούν τις λειτουργίες ελέγχου μέσα στις συμβολοσειρές να αποτελούν μέρος του κειμένου χωρίς να μπερδεύονται ως κώδικας. Μια κοινή παγίδα για αρχάριους είναι η σύγχυση σχετικά με τη συμπερίληψη εισαγωγικών μέσα σε μια κυριολεκτική συμβολοσειρά. Για παράδειγμα, η ακόλουθη γραμμή κώδικα θα οδηγήσει σε σφάλμα μεταγλώττισης επειδή τα εισαγωγικά γύρω από το '\t escape sequence' τερματίζουν πρόωρα τη συμβολοσειρά:

συμβολοσειρά txt = 'Αυτό το άρθρο αφορά την εξερεύνηση του' \ t ακολουθία διαφυγής» με τη βοήθεια παραδειγμάτων». ;

Για να το διορθώσουμε σε ένα πρόγραμμα C++, θα χρησιμοποιήσουμε την ανάστροφη κάθετο '\' ως χαρακτήρα διαφυγής για να ειδοποιήσουμε τον μεταγλωττιστή ότι ο παρακάτω χαρακτήρας έχει μια ειδική ερμηνεία. Δείτε πώς γίνεται:







συμβολοσειρά txt = 'Αυτό το άρθρο αφορά την εξερεύνηση του\' \\ t escape sequence\' με τη βοήθεια παραδειγμάτων.' ;

Κατάδυση στον Ειδικό χαρακτήρα (\t) στη C++

Η ακολουθία '\t' είναι κάτι περισσότερο από ένα απλό εργαλείο απόστασης. Αντιπροσωπεύει έναν χαρακτήρα καρτέλας που προκαλεί τη μετατόπιση του δρομέα στην επόμενη στάση καρτέλας. Αυτό είναι ιδιαίτερα βολικό για τη δημιουργία των τακτοποιημένων οθονών κειμένου σε εφαρμογές τερματικού. Πέρα από το '\t', η C++ υποστηρίζει μια ποικιλία από ακολουθίες διαφυγής για διαφορετικούς σκοπούς — για παράδειγμα, το '\n' δημιουργεί μια νέα γραμμή. Ωστόσο, σε αυτό το άρθρο, θα επικεντρωθούμε αποκλειστικά στην ακολουθία διαφυγής '\t' στην C++ παρέχοντας παραδείγματα για να δείξουμε τον σκοπό και τη χρήση της. Αυτό θα σας δώσει τη γνώση για να χρησιμοποιήσετε αποτελεσματικά την οριζόντια καρτέλα στις προγραμματιστικές σας εργασίες. Ας προχωρήσουμε στα παραδείγματα για να κατανοήσουμε τη λειτουργία της ακολουθίας διαφυγής '\t' σε ένα πρόγραμμα C++.



Παράδειγμα 1:

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



#include

χρησιμοποιώντας το namespace std ;

ενθ κύριος ( ) {

cout << 'Αυτή είναι η πρώτη γραμμή κειμένου.' << endl ;

cout << «Αυτή είναι η δεύτερη γραμμή κειμένου. \ t ' ;

cout << «Αυτή η γραμμή ακολουθείται από α \\ t escape sequence.' ;

ΕΠΙΣΤΡΟΦΗ 0 ;

}

Ακολουθεί μια λεπτομέρεια για κάθε μέρος του κώδικα:





#include Αυτή η γραμμή προσθέτει τη βιβλιοθήκη iostream στο πρόγραμμα που απαιτείται για τη λειτουργία εισόδου και εξόδου. Το αρχείο κεφαλίδας περιέχει ορισμούς για αντικείμενα όπως cin, cout κ.λπ.

χρησιμοποιώντας namespace std? – Αυτός ο κώδικας σάς επιτρέπει να χρησιμοποιείτε τα ονόματα που περιλαμβάνονται στην τυπική βιβλιοθήκη χωρίς να τους προσθέτετε το πρόθεμα 'std::'. Για παράδειγμα, μπορείτε να γράψετε 'cout' αντί για 'std::cout'.



int main() { – Αυτή είναι η δήλωση και το σημείο εισόδου της κύριας συνάρτησης για κάθε πρόγραμμα C++. Το 'int' πριν από το 'main' συνήθως υποδεικνύει ότι η συνάρτηση επιστρέφει μια ακέραια τιμή.

cout << 'Αυτή είναι η πρώτη γραμμή κειμένου.'< Αυτή η γραμμή εκτυπώνει τη συμβολοσειρά 'Αυτή είναι η πρώτη γραμμή κειμένου' στην κονσόλα. Ο «<<» είναι ο τελεστής εισαγωγής. Για να εισαγάγετε μια νέα γραμμή, χρησιμοποιείται ο χαρακτήρας 'endl'.

cout << 'Αυτή είναι η δεύτερη γραμμή κειμένου.\t'; – Εδώ, το πρόγραμμα βγάζει μια άλλη συμβολοσειρά που είναι 'Αυτή είναι η δεύτερη γραμμή κειμένου.\t'. Παρατηρήστε το '\t' στο τέλος. Όταν εκτυπώνεται στην κονσόλα, προσθέτει έναν οριζόντιο χώρο καρτέλας αμέσως μετά το κείμενο.

cout << 'Αυτή η γραμμή ακολουθείται από μια ακολουθία διαφυγής \\t.'; – Σε αυτή τη γραμμή, το πρόγραμμα εκτυπώνει 'Αυτή η γραμμή ακολουθείται από μια ακολουθία διαφυγής'. Η ακολουθία διαφυγής '\\t' χρησιμοποιείται για να συμπεριλάβει κυριολεκτικά το '\t' στην έξοδο, καθώς η ανάστροφη κάθετο '\' διαφεύγει από την ίδια την αντίστροφη κάθετο, έτσι ώστε η ίδια η '\t' να εκτυπώνεται αντί για μια οριζόντια καρτέλα.

επιστροφή 0; – Αυτό σηματοδοτεί το τέλος της κύριας συνάρτησης και επιστρέφει το μηδέν που σημαίνει την επιτυχή εκτέλεση του προγράμματος. Όταν εκτελείται αυτό το πρόγραμμα, η έξοδος μοιάζει με αυτό:

Παράδειγμα 2:

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

#include

χρησιμοποιώντας το namespace std ;

ενθ κύριος ( ) {

cout << 'Ονομα \ t | \ t Πόλη \ t | \ t Χώρα' << endl ;

cout << '--------------------------------------------' << endl ;

cout << 'Αλίκη \ t | \ t το Πεκίνο \ t | \ t Κίνα' << endl ;

cout << 'Βαρίδι \ t | \ t Όστιν \ t | \ t Αμερική' << endl ;

cout << «Καθ \ t | \ t Παρίσι \ t | \ t Γαλλία' << endl ;

cout << 'Δαβίδ \ t | \ t Ντέρμπαν \ t | \ t Νότια Αφρική' << endl ;

cout << '--------------------------------------------' << endl ;

ΕΠΙΣΤΡΟΦΗ 0 ;

}

Ακολουθεί μια ανάλυση του κώδικα:

Πάλι, #include περιλαμβάνει τη βιβλιοθήκη iostream για την εκτέλεση των λειτουργιών εισόδου/εξόδου στη C++.

χρησιμοποιώντας namespace std? – Επιτρέπει τη χρήση των οντοτήτων από τον χώρο ονομάτων «std» χωρίς να χρειάζεται να τους προσαρτήσετε με «std::».

ο int main() { είναι το σημείο εισόδου κάθε προγράμματος C++. Όταν εκτελείτε το πρόγραμμα, η εκτέλεση ξεκινά από εδώ.

Μέσα στην κύρια λειτουργία, έχουμε τα εξής:

cout << 'Όνομα\t|\tΠόλη\t|\tΧώρα'< Αυτή η γραμμή εκτυπώνει τις κεφαλίδες του πίνακα με τον χαρακτήρα καρτέλας '\t' για στοίχιση. Το Cout χρησιμοποιείται για την έξοδο της κονσόλας, το '\t' εισάγει μια οριζόντια καρτέλα μεταξύ των κειμένων και το 'endl' χρησιμοποιείται για την εισαγωγή μιας νέας γραμμής στο τέλος.

cout << '———————————————'< Αυτή η γραμμή εκτυπώνει ένα οπτικό διαχωριστικό, μια γραμμή με παύλες, για να υποδείξει το τέλος της κεφαλίδας και να διαχωρίσει την κεφαλίδα από τα δεδομένα.

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

επιστροφή 0;: – Αυτή η γραμμή υποδεικνύει την επιτυχή εκτέλεση του προγράμματος. Μια τιμή επιστροφής 0 υποδηλώνει επιτυχία.

Όταν μεταγλωττιστεί και εκτελεστεί αυτό το πρόγραμμα, η έξοδος θα εμφανιστεί ως πίνακας στην κονσόλα με τα ονόματα, τις πόλεις και τις χώρες των ατόμων που είναι ευθυγραμμισμένα σωστά σε στήλες που χωρίζονται με κάθετες γραμμές (|) και καρτέλες. Δείτε την ακόλουθη έξοδο:

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

Παράδειγμα 3:

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

#include
χρησιμοποιώντας το namespace std ;
ενθ κύριος ( ) {
ενθ διαμάντι = 3 ;
Για ( ενθ Εγώ = 1 ; Εγώ <= διαμάντι ; ++ Εγώ ) {
Για ( ενθ ι = 0 ; ι < διαμάντι - Εγώ ; ++ ι ) {
cout << ' \ t ' ;
}
Για ( ενθ ι = 0 ; ι < 2 * Εγώ - 1 ; ++ ι ) {
cout << '* \ t ' ; }
cout << endl ;
}
Για ( ενθ Εγώ = διαμάντι - 1 ; Εγώ >= 1 ; -- Εγώ ) {
Για ( ενθ ι = 0 ; ι < διαμάντι - Εγώ ; ++ ι ) {
cout << ' \ t ' ;
}
Για ( ενθ ι = 0 ; ι < 2 * Εγώ - 1 ; ++ ι ) {
cout << '* \ t ' ; }
cout << endl ;
}
ΕΠΙΣΤΡΟΦΗ 0 ;
}

Όπως μπορείτε να δείτε, αυτό το πρόγραμμα αποτελείται από δύο μέρη: το ένα εκτυπώνει το πάνω μισό του διαμαντιού και το άλλο εκτυπώνει το κάτω μισό. Το επάνω μισό του διαμαντιού εκτυπώνεται με την παραγωγή ενός μειούμενου αριθμού καρτελών για τη δημιουργία της εσοχής, ακολουθούμενο από έναν αυξανόμενο αριθμό αστερίσκων '*', που χωρίζονται με καρτέλες. Αυτό αντιμετωπίζεται μέσα στον πρώτο βρόχο «για».

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

Όταν εκτελείτε το πρόγραμμα με 'diamond= 3', η έξοδος μοιάζει με διαμάντι που βρίσκεται στο κέντρο της οθόνης λόγω των χαρακτήρων της καρτέλας. Δείτε την έξοδο του συγκεκριμένου προγράμματος:

  Μια ομάδα μικρών μαύρων και μπλε αστεριών Η περιγραφή δημιουργήθηκε αυτόματα

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

συμπέρασμα

Οι ακολουθίες διαφυγής στη C++ είναι ένα ισχυρό εργαλείο για την αναπαράσταση των χαρακτήρων που δεν εμφανίζονται εύκολα σε ένα τυπικό παράθυρο εξόδου. Μεταξύ αυτών των ακολουθιών, η οριζόντια καρτέλα, που συμβολίζεται με '\t', είναι ιδιαίτερα χρήσιμη για την προσθήκη των ελεγχόμενων οριζόντιων διαστημάτων στο κείμενο. Χρησιμοποιώντας το '\t', οι προγραμματιστές μπορούν να ευθυγραμμίσουν την έξοδο κειμένου τους, να βελτιώσουν την αναγνωσιμότητα και να δομήσουν συστηματικά τα δεδομένα. Αυτός ο χαρακτήρας μιμείται το πάτημα του πλήκτρου 'tab' σε ένα πληκτρολόγιο, προωθώντας τον κέρσορα στην επόμενη θέση καρτέλας. Σε αυτό το άρθρο, εξερευνήσαμε τη λειτουργικότητα της ακολουθίας διαφυγής '\t' στη γλώσσα C++, επισημαίνοντας την εφαρμογή της με απλά και πρακτικά παραδείγματα για να επεξηγήσουμε τη συμπεριφορά της.