Jak porównać dwa ciągi znaków w programowaniu w C: 10 kroków

Spisu treści:

Jak porównać dwa ciągi znaków w programowaniu w C: 10 kroków
Jak porównać dwa ciągi znaków w programowaniu w C: 10 kroków

Wideo: Jak porównać dwa ciągi znaków w programowaniu w C: 10 kroków

Wideo: Jak porównać dwa ciągi znaków w programowaniu w C: 10 kroków
Wideo: КИТАЙЦЫ, ЧТО ВЫ ТВОРИТЕ??? 35 СУПЕР ТОВАРОВ ДЛЯ АВТОМОБИЛЯ С ALIEXPRESS 2024, Listopad
Anonim

Porównywanie długości ciągów jest często używaną funkcją w programowaniu w C, ponieważ może powiedzieć, który ciąg ma więcej znaków. Ta funkcja jest bardzo przydatna przy sortowaniu danych. Porównywanie ciągów wymaga specjalnej funkcji; nie używaj != lub ==.

Krok

Porównaj dwie struny w kroku 1 programowania w języku C
Porównaj dwie struny w kroku 1 programowania w języku C

Krok 1. Istnieją 2 rodzaje funkcji, których możesz użyć do porównywania ciągów w języku C

Obie te funkcje są zawarte w bibliotece.

  • strcmp(): Ta funkcja porównuje dwa ciągi i zwraca wynik porównania liczby znaków między nimi.
  • strncmp(): Ta funkcja jest taka sama jak strcmp(), z wyjątkiem tego, że porównuje pierwsze n} znaków w ciągu. Ta funkcja jest uważana za bezpieczniejszą, ponieważ zapobiega zablokowaniu programu z powodu przeciążenia.
Porównaj dwa ciągi znaków w kroku 2 programowania w języku C
Porównaj dwa ciągi znaków w kroku 2 programowania w języku C

Krok 2. Uruchom program z potrzebnymi bibliotekami

Zalecamy uruchomienie i wraz z innymi bibliotekami potrzebnymi do konkretnego programu.

#włącz #włącz

Porównaj dwa ciągi w programowaniu w C krok 3
Porównaj dwa ciągi w programowaniu w C krok 3

Krok 3. Uruchom funkcję

wewn. Jest to najłatwiejszy sposób nauczenia się tej funkcji, ponieważ zwraca wartość całkowitą porównania liczby znaków w dwóch ciągach.

#include #include int main() { }

Porównaj dwa ciągi znaków w kroku 4 programowania w języku C
Porównaj dwa ciągi znaków w kroku 4 programowania w języku C

Krok 4. Zdefiniuj dwa ciągi, które chcesz porównać

Na przykład porównamy 2 ciągi danych typu char, które zostały zdefiniowane wcześniej. Możesz również zdefiniować wartość zwracaną przez tę funkcję, aby miała typ danych integer.

#include #include int main() { char *str1 = "jabłko"; char *str2 = "pomarańczowy"; int ret; }

Porównaj dwa ciągi w C Programowanie Krok 5
Porównaj dwa ciągi w C Programowanie Krok 5

Krok 5. Dodaj funkcję porównania

Po zdefiniowaniu tych dwóch ciągów możesz dodać funkcję porównania. Będziemy używać strncmp(), więc musimy się upewnić, że liczba znaków do zmierzenia jest ustawiona w funkcji.

#include #include int main() { char *str1 = "jabłko"; char *str2 = "pomarańczowy"; int ret; ret = strncmp(str1, str2, 6); /*Ta funkcja porówna oba ''ciągi'' składające się z 6 znaków */ }

Porównaj dwa ciągi znaków w kroku 6 programowania w języku C
Porównaj dwa ciągi znaków w kroku 6 programowania w języku C

Krok 6. Użyj instrukcji

Jeśli… Jeszcze do porównania. Po dodaniu funkcji do programu możesz użyć instrukcji, aby wyświetlić, który ciąg ma więcej znaków. strncmp() zwróci 0, jeśli łańcuchy mają taką samą liczbę znaków, liczbę dodatnią, jeśli słowo1 jest dłuższe, a liczbę ujemną, jeśli słowo2 jest dłuższe.

#include #include int main() { char *str1 = "jabłko"; char *str2 = "pomarańczowy"; int ret; ret = strncmp(str1, str2, 6); if(ret > 0) { printf("str1 jest dłuższe"); } else if(ret < 0) { printf("str2 jest dłuższe"); } else { printf("Oba łańcuchy mają tę samą długość"); } return(0); }

Zalecana: