gtemata.com

Cum de a compara două șir în limba C

Compararea șirului este una dintre cele mai utilizate funcții atunci când se programează folosind limba C. Această funcție permite să înțelegeți dacă două șiruri sunt egale sau care dintre cele două este cea mai lungă. Dacă se creează un set de date, compararea șirurilor este un instrument foarte util. Pentru a compara două șiruri trebuie să utilizați o funcție specială, nu vă puteți limita la folosirea operatorilor de comparație! = Sau ==.

paşi

1
În C, există două funcții care vă permit să comparați două șiruri de caractere. Ambele sunt incluse în biblioteca standard.
  • 2
    Porniți programul prin includerea bibliotecilor de care aveți nevoie. Apoi includeți bibliotecile și orice altă bibliotecă suplimentară, în funcție de programul pe care doriți să-l creați.
  • 3
    Porniți programul prin declanșarea unei funcții.int. Deoarece va trebui să returneze o valoare intregă determinată de rezultatul comparării celor două șiruri în cauză, ea declară o funcție de acest tip. Acesta este cel mai simplu mod de a învăța cum să utilizați comparații de șir.


  • 4
    Menționați cele două șiruri pe care doriți să le comparați. În acest exemplu, vom compara două șiruri de caractere predefinite. De asemenea, va trebui să declarați o variabilă de tip int care va conține valoarea care trebuie returnată.
  • 5
    Introduceți funcția de comparație. Având la dispoziție cele două șiruri de comparare, acum puteți aminti funcția care va face comparația. În acest caz, vom folosi funcția strncmp (), așa că vom specifica și numărul de caractere care vor fi comparate.
  • 6
    Utilizați o structură.Dacă ... Altfel, pentru a efectua comparația. Acum, după invocarea funcției strncmp, puteți utiliza o structură If ... Else pentru a evalua rezultatul și a vizualiza care dintre cele două șiruri este cel mai lung. Dacă cele două șiruri au aceeași lungime, funcția strncmp () returnează valoarea 0- în schimb, returnează un întreg pozitiv dacă șirul str1 este cel mai lung. În cele din urmă, returnează o valoare întregă negativă dacă șirul str2 este mai lung decât primul.
  • Avertismente

    • Amintiți-vă că dacă șirurile sunt egale, valoarea de retur a funcției este 0. Aceasta vă poate deruta, deoarece 0 în C corespunde și valorii "FALS".
    Distribuiți pe rețelele sociale:

    înrudit