Warunek wstępny:
Przed sprawdzeniem przykładów z tego samouczka musisz sprawdzić, czy kompilator g++ jest zainstalowany w systemie. Jeśli używasz Visual Studio Code, zainstaluj niezbędne rozszerzenia, aby skompilować kod źródłowy C++ w celu utworzenia kodu wykonywalnego. Tutaj aplikacja Visual Studio Code została użyta do kompilacji i wykonania kodu C++.
Używanie Operatora porównania do porównania ciągu:
Najpopularniejszym sposobem porównywania ciągów w C++ jest użycie operatora porównania. Są to operatory równe (==) i nie równe (!=). Utwórz plik C++ z następującym kodem, aby porównać dwie wartości ciągu przy użyciu operatora porównania. Zgodnie z kodem adres URL zostanie pobrany od użytkownika i porównany z innymi ciągami za pomocą operatora równości (==). Jeśli wartość wejściowa pasuje do dowolnego łańcucha warunku „if”, zostanie wydrukowana konkretna wiadomość; w przeciwnym razie zostanie wyświetlony komunikat części „inna”.
//Dołącz niezbędną bibliotekę
#włączać
używanie standardowej przestrzeni nazw;
intmain() {
// Zadeklaruj zmienną łańcuchową
ciąg url_addr;
// Pobierz adres URL od użytkownika
kosztadres_url;
// Porównaj wartość wejściową z innym ciągiem za pomocą równoważnego operatora
Jeśli(adres_url== „Google com”)
koszt<<'To jest wensite wyszukiwarki.'<<koniec;
elseif(adres_url== „jooble.org”)
koszt<<„To jest strona internetowa poszukująca pracy”.<<koniec;
elseif(adres_url== 'linuxhint.pl')
koszt<<„To jest witryna blogowa”.<<koniec;
w przeciwnym razie
koszt<<'Nie dodano żadnych informacji dla tej witryny.'<<koniec;
powrót0;
}
Wyjście:
Po wykonaniu kodu, jeśli użytkownik wpisał „ linuxhint.pl ‘ jako dane wejściowe, zostanie zwrócony trzeci warunek ‘if’ Prawdziwe, i pojawi się następujący wynik.
Użycie funkcji Compare() do porównania ciągu:
Funkcja Compare() porównuje dwa ciągi i zwraca 0, 1 lub -1 na podstawie pasującego wyniku porównania. Znaczenie wartości zwracanych podano poniżej.
- Funkcja zwróci 0, gdy oba porównywane ciągi są równe.
- Funkcja zwróci 1, gdy pierwszy ciąg będzie większy od drugiego.
- Funkcja zwróci -1, gdy pierwszy ciąg będzie mniejszy niż drugi.
Składnia:
intciąg1.porównywać(ciąg2)Utwórz plik C++ z następującym kodem, aby porównać dwie wartości ciągu z dwiema wartościami wejściowymi za pomocą funkcji Compare(). Uwierzytelnienie dowolnego użytkownika można sprawdzić, porównując wartości przesłane przez użytkowników z wartościami uwierzytelnionego użytkownika. Ten proces uwierzytelniania został zaimplementowany w poniższym kodzie. Prawidłowy adres e-mail i hasło zostały zapisane w dwóch zmiennych łańcuchowych. Następnie wartości te zostały porównane z adresem e-mail i hasłem pobranym od użytkownika używającego porównywać () funkcjonować. Logiczne ORAZ operator został użyty w kodzie do uwierzytelnienia użytkownika. Komunikat o powodzeniu zostanie wydrukowany, jeśli obie funkcje porównania() zwrócą True. W przeciwnym razie zostanie wydrukowany komunikat o błędzie.
//Dołącz niezbędną bibliotekę#włączać
używanie standardowej przestrzeni nazw;
intmain() {
//Zainicjuj dwie zmienne łańcuchowe
e-mail tekstowy(' [e-mail chroniony] ');
hasło tekstowe(„linuxhint”);
//Zadeklaruj dwie zmienne łańcuchowe
ciąg user_email;
ciąg użytkownika_hasło;
//Pobierz adres e-mail od użytkownika
kosztużytkownik_e-mail;
//Pobierz hasło od użytkownika
koszthasło użytkownika;
//Sprawdź nazwę użytkownika i hasło są prawidłowe lub nieprawidłowe
Jeśli (użytkownik_e-mail.porównywać(e-mail) == 0&&hasło użytkownika.porównywać(hasło) == 0 )
koszt<<„Uwierzytelnianie powiodło się”.<<koniec;
w przeciwnym razie
koszt<<„E-mail lub hasło jest nieprawidłowe”.<<koniec;
powrót0;
}
Wyjście:
Po wykonaniu kodu, jeśli użytkownik wpisał „ [e-mail chroniony] ‘ jako adres e-mail i ‘ 12345 ‘ jako hasło zostanie zwrócony trzeci warunek ‘if’ Fałszywe, i pojawi się następujący wynik.
Po ponownym wykonaniu kodu, jeśli użytkownik wpisał „ [e-mail chroniony] ‘ jako adres e-mail i ‘ linuxhint ‘ jako hasło zostanie zwrócony trzeci warunek ‘if’ Prawdziwe, i pojawi się następujący wynik.
Użycie funkcji strcmp() do porównania ciągu:
strcmp() to kolejna funkcja do porównywania ciągów w C++. Zwraca true, jeśli oba porównywane ciągi są równe. Parametry wejściowe pobierane przez tę funkcję różnią się od funkcji Compare(). Funkcja porównania przyjmuje wartość ciągu jako parametr, a funkcja strcmp() przyjmuje tablicę znaków jako parametr. Składnia tej funkcji jest podana poniżej.
Składnia:
int strcmp ( stały zwęglać *str1, stały zwęglać *str2);Utwórz plik C++ z następującym kodem, aby porównać dwa ciągi za pomocą funkcji strcmp(). W kodzie zostały zadeklarowane dwie tablice znaków po 100 elementów do przechowywania wartości ciągów znaków pobieranych przez użytkowników. ten getline() Funkcja służy do przechowywania danych wejściowych użytkownika w zmiennych tablicowych znaków. Następnie strcmp() funkcja została użyta do sprawdzenia, czy wartości wejściowe są równe lub nie. Jeśli funkcja zwraca Prawdziwe, wtedy zostanie wydrukowany komunikat o powodzeniu; w przeciwnym razie zostanie wydrukowany komunikat o niepowodzeniu,
//Dołącz niezbędne biblioteki#włączać
#włączać
używanie standardowej przestrzeni nazw;
intmain() {
// Usuń dwie zmienne łańcuchowe
zwęglaćchrData1[100],chrData2[100];
//Weź pierwszy ciąg danych
koszt<<'Wprowadź pierwszy ciąg:';
Gin.getline(chrData1, 100);
//Weź drugi ciąg danych
koszt<<'Wprowadź drugi ciąg:';
Gin.getline(chrData2, 100);
Jeśli ( strcmp (chrData1,chrData2)==0)
printf („Struny są równe” ');
w przeciwnym razie
printf („Struny nie są równe” ');
powrót0;
}
Wyjście:
Po wykonaniu kodu wartość ciągu „ dzień dobry ‘ jest podane dla obu wartości wejściowych i pojawi się następujący wynik.
Wniosek:
W tym samouczku pokazano trzy sposoby porównywania ciągów w języku C++, używając trzech prostych przykładów. Zarówno zastosowania operatora porównania, jak i wbudowane funkcje sprawdzania równości ciągów zostały opisane w tym samouczku, aby pomóc nowym programistom C++.