Ποια είναι η διαφορά μεταξύ της μεθόδου C++ String == και Compare().

Poia Einai E Diaphora Metaxy Tes Methodou C String Kai Compare



Η C++ είναι μια γλώσσα προγραμματισμού που χρησιμοποιείται για την ανάπτυξη εφαρμογών υψηλής απόδοσης και ποιότητας. Ένα από τα χαρακτηριστικά που προσφέρει η C++ είναι η χειραγώγηση συμβολοσειρών, η οποία περιλαμβάνει τη δυνατότητα σύγκρισης συμβολοσειρών για να δούμε αν είναι ίσες. Ωστόσο, η C++ παρέχει δύο μεθόδους για τη σύγκριση συμβολοσειρών: το ' == ' χειριστής και το ' συγκρίνω() 'μέθοδος. Παρά την ομοιότητά τους, έχουν διακριτές διαφορές που μπορούν να επηρεάσουν την απόδοση του κώδικά σας.

Αυτό το σεμινάριο θα καλύψει τη διαφορά μεταξύ αυτών των δύο μεθόδων, == και σύγκριση() στη C++.







== Χειριστής σε C++

Στη C++, ο τελεστής double ίσο == χρησιμοποιείται για να ελέγξει αν οι δύο τιμές είναι ίσες ή όχι. Ακολουθεί η γενική μορφή για τη χρήση του τελεστή ==:



Για να χρησιμοποιήσετε το « == ” τελεστής για σύγκριση συμβολοσειρών, η γενική μορφή είναι η εξής:



  • Αρχικά, πρέπει να δηλώσετε δύο μεταβλητές συμβολοσειράς για σύγκριση.
  • Στη συνέχεια χρησιμοποιήστε το ' == ” για να συγκρίνετε και τις δύο χορδές.
  • Ο χειριστής θα επιστρέψει μια Boolean τιμή ' σωστό ή λάθος », ανάλογα με το αν οι δύο χορδές είναι ίδιες.

Εδώ είναι ένα παράδειγμα:





#include

#include

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



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

συμβολοσειρά str1 = 'Γειά σου' ;

συμβολοσειρά str2 = 'Linux' ;

συμβολοσειρά str3 = 'Γειά σου' ;



αν ( str1 == str2 ) {

cout << 'Η συμβολοσειρά 1 και η συμβολοσειρά 2 είναι ίσες' << endl ;

} αλλού {

cout << 'Η συμβολοσειρά 1 και η συμβολοσειρά 2 δεν είναι ίσες' << endl ;

}



αν ( str1 == str3 ) {

cout << 'Η συμβολοσειρά 1 και η συμβολοσειρά 3 είναι ίσες' << endl ;

} αλλού {

cout << 'Η συμβολοσειρά 1 και η συμβολοσειρά 3 δεν είναι ίσες' << endl ;

}



ΕΠΙΣΤΡΟΦΗ 0 ;

}

Μέθοδος compare() σε C++

Στη C++, η μέθοδος compare() χρησιμοποιείται για τη σύγκριση δύο συμβολοσειρών χαρακτήρα προς χαρακτήρα, με βάση τις τιμές ASCII τους, και επιστρέφει έναν ακέραιο που αντιπροσωπεύει τη σχέση τους. Εάν η πρώτη συμβολοσειρά είναι λεξικογραφικά μικρότερη από τη δεύτερη συμβολοσειρά, η ακέραια τιμή που επιστρέφεται με αυτή τη μέθοδο είναι αρνητική και μηδενική εάν οι δύο συγκρινόμενες συμβολοσειρές είναι πανομοιότυπες, και εάν η πρώτη συμβολοσειρά είναι μεγαλύτερη από την άλλη τότε αυτή η μέθοδος θα επιστρέψει τον θετικό αριθμό.



Ακολουθεί η μορφή για τη χρήση της μεθόδου compare():

ενθ variable_name = str1. συγκρίνω ( str2 ) ;

Ακολουθεί το παράδειγμα κώδικα για τη σύγκριση δύο συμβολοσειρών χρησιμοποιώντας τη μέθοδο compare():

#include

#include

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



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

συμβολοσειρά str1 = 'LinuxHint' ;

συμβολοσειρά str2 = 'δικτυακός τόπος' ;

ενθ αποτέλεσμα = str1. συγκρίνω ( str2 ) ;

αν ( αποτέλεσμα < 0 )

{

cout << 'Η συμβολοσειρά 1 είναι λεξικογραφικά μικρότερη από τη συμβολοσειρά 2.' << endl ;

}

ΕΠΙΣΤΡΟΦΗ 0 ;

}

Ποια είναι η διαφορά μεταξύ της μεθόδου C++ String == και compare().

Οι βασικές διαφορές μεταξύ της μεθόδου compare() και του τελεστή == παρατίθενται παρακάτω:

συγκρίνω() == Χειριστής
Επιστρέφει την ακέραια τιμή Επιστρέφει τη boolean τιμή
Απαιτεί το ίδιο μήκος συγκριτικών συμβολοσειρών για να ληφθούν ακριβή αποτελέσματα Συγκρίνει ολόκληρες τις συμβολοσειρές χαρακτήρα προς χαρακτήρα
Μπορεί να εκτελέσει πολλαπλές λειτουργίες ανάλογα με τα ορίσματα Μπορεί να εκτελέσει μόνο μία λειτουργία
Πραγματοποιεί λεξικογραφική σύγκριση των συμβολοσειρών χαρακτήρα προς χαρακτήρα Εκτελεί μια απλή σύγκριση ολόκληρων των χορδών
Εκτελεί εξαγωγή συμβολοσειράς λέξη προς λέξη Εκτελεί σύγκριση συμβολοσειρών χαρακτήρων προς χαρακτήρα

συμπέρασμα

Η C++ είναι μια ισχυρή γλώσσα προγραμματισμού που προσφέρει δυνατότητες χειρισμού συμβολοσειρών, συμπεριλαμβανομένης της δυνατότητας σύγκρισης συμβολοσειρών χρησιμοποιώντας το ' == ' χειριστής ή το ' συγκρίνω() 'μέθοδος. Και οι δύο μέθοδοι έχουν ευδιάκριτες διαφορές που επηρεάζουν την απόδοση του κώδικα και η κατανόηση του πότε πρέπει να χρησιμοποιείται η καθεμία μπορεί να βοηθήσει τους προγραμματιστές να γράψουν πιο αποτελεσματικό κώδικα.