Vad är skillnaden mellan C++ String == och Compare() Method

Vad Ar Skillnaden Mellan C String Och Compare Method



C++ är ett programmeringsspråk som används för att utveckla applikationer med hög prestanda och kvalitet. En av funktionerna som C++ erbjuder är strängmanipulation, vilket inkluderar möjligheten att jämföra strängar för att se om de är lika. C++ tillhandahåller dock två metoder för att jämföra strängar: ' == ' operatör och ' jämföra() 'metoden. Trots sin likhet har de distinkta skillnader som kan påverka hur din kod presterar.

Denna handledning kommer att täcka skillnaden mellan dessa två metoder, == och comparison() i C++.







== Operatör i C++

I C++ används operatorn dubbel lika == för att kontrollera om de två värdena är lika eller inte. Följande är det allmänna formatet för att använda operatorn ==:



För att använda ' == ” för att jämföra strängar, det allmänna formatet är följande:



  • Först måste du deklarera två strängvariabler för jämförelse.
  • Använd sedan ' == ” för att jämföra båda strängarna.
  • Operatören kommer att returnera ett booleskt värde på ' sant eller falskt ', beroende på om de två strängarna är identiska.

Här är ett exempel:





#include

#inkludera

använder sig av namnutrymme std ;



int huvud ( ) {

sträng str1 = 'Hallå' ;

sträng str2 = 'Linux' ;

sträng str3 = 'Hallå' ;



om ( str1 == str2 ) {

cout << 'String 1 och String 2 är lika' << endl ;

} annan {

cout << 'Sträng 1 och String 2 är inte lika' << endl ;

}



om ( str1 == str3 ) {

cout << 'String 1 och String 3 är lika' << endl ;

} annan {

cout << 'Sträng 1 och String 3 är inte lika' << endl ;

}



lämna tillbaka 0 ;

}

compare() metod i C++

I C++ används metoden compare() för att jämföra två strängar tecken för tecken, baserat på deras ASCII-värden, och returnerar ett heltal som representerar deras relation. Om den första strängen är lexikografiskt mindre än den andra strängen är heltalsvärdet som returneras av denna metod negativt och noll om de två jämförda strängarna är identiska, och om den första strängen är större än den andra kommer denna metod att returnera det positiva talet.



Nedan är formatet för att använda metoden compare():

int variabelnamn = str1. jämföra ( str2 ) ;

Nedan är exempelkoden för att jämföra två strängar med metoden compare():

#include

#inkludera

använder sig av namnutrymme std ;



int huvud ( ) {

sträng str1 = 'LinuxHint' ;

sträng str2 = 'hemsida' ;

int resultat = str1. jämföra ( str2 ) ;

om ( resultat < 0 )

{

cout << 'String 1 är lexikografiskt mindre än String 2.' << endl ;

}

lämna tillbaka 0 ;

}

Vad är skillnaden mellan C++ String == och compare() Method

De viktigaste skillnaderna mellan compare()-metoden och ==-operatorn listas nedan:

jämföra() == Operatör
Det returnerar heltalsvärdet Det returnerar det booleska värdet
Kräver samma längd på jämförda strängar för att få exakta resultat Jämför hela strängarna tecken för tecken
Den kan utföra flera operationer beroende på argumenten Kan endast utföra en enda operation
Utför en lexikografisk jämförelse av strängarna tecken för tecken Utför en enkel jämförelse av hela strängarna
Utför ord-för-ord-strängextraktion Utför en strängjämförelse tecken för tecken

Slutsats

C++ är ett kraftfullt programmeringsspråk som erbjuder strängmanipuleringsmöjligheter, inklusive möjligheten att jämföra strängar med hjälp av ' == ' operatör eller ' jämföra() 'metoden. Båda metoderna har distinkta skillnader som påverkar kodprestandan, och att förstå när man ska använda var och en kan hjälpa utvecklare att skriva mer effektiv kod.