C++ е език за програмиране, който се използва за разработване на високопроизводителни и качествени приложения. Една от функциите, които C++ предлага, е манипулирането на низове, което включва възможността да се сравняват низове, за да се види дали са равни. C++ обаче предоставя два метода за сравняване на низове: == ” оператор и „ сравни() ” метод. Въпреки приликата си, те имат различни разлики, които могат да повлияят на работата на вашия код.
Този урок ще разгледа разликата между тези два метода, == и сравнение() в C++.
== Оператор в C++
В C++ операторът double equal == се използва за проверка дали двете стойности са равни или не. Следва общият формат за използване на оператора ==:
За да използвате „ == ” за сравняване на низове, общият формат е както следва:
- Първо, трябва да декларирате две низови променливи за сравнение.
- След това използвайте „ == ”, за да сравните двата низа.
- Операторът ще върне булева стойност „ истина или лъжа “, в зависимост от това дали двата низа са идентични.
Ето един пример:
#include
#include <низ>
използвайки пространство от имена std ;
вътр основен ( ) {
низ str1 = 'Здравейте' ;
низ str2 = 'Линукс' ;
низ 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():
вътр име_на_променлива = str1. сравнявам ( str2 ) ;По-долу е примерният код за сравняване на два низа с помощта на метода compare():
#include#include <низ>
използвайки пространство от имена std ;
вътр основен ( ) {
низ str1 = 'LinuxHint' ;
низ str2 = 'уебсайт' ;
вътр резултат = str1. сравнявам ( str2 ) ;
ако ( резултат < 0 )
{
cout << „Низ 1 е лексикографски по-малък от низ 2.“ << endl ;
}
връщане 0 ;
}
Каква е разликата между C++ String == и метода compare().
Основните разлики между метода compare() и оператора == са изброени по-долу:
сравни() | == Оператор |
---|---|
Връща целочислената стойност | Връща булевата стойност |
Изисква еднаква дължина на сравняваните низове, за да получите точни резултати | Сравнява целите низове символ по символ |
Може да извършва множество операции в зависимост от аргументите | Може да извърши само една операция |
Извършва лексикографско сравнение на низовете символ по символ | Извършва просто сравнение на целите низове |
Извършва извличане на низ дума по дума | Извършва сравнение на низове символ по символ |
Заключение
C++ е мощен език за програмиране, който предлага възможности за манипулиране на низове, включително възможността за сравняване на низове с помощта на „ == ” или „ сравни() ” метод. И двата метода имат различни разлики, които оказват влияние върху производителността на кода, и разбирането кога да се използва всеки от тях може да помогне на разработчиците да пишат по-ефективен код.