Ako porovnať dva riadky v programovacom jazyku c

V softvérových kódoch napísaných v C, často často porovnávajú dĺžky reťazcov, aby ste zistili, ktorý linka obsahuje viac znakov. To je užitočné pre triedenie údajov. Na porovnanie reťazcov sa vyžaduje špeciálna funkcia - nepoužívajte != alebo ==.

Kroky

jeden. Programovací jazyk s obsahom dvoch funkcií, s ktorými môžete porovnať dĺžky reťazcov. Obe tieto funkcie sú zahrnuté v knižnici .
  • STRCMP () - Táto funkcia porovnáva dva riadky a vráti rozdiel v počte znakov.
  • StrnCMP () - Táto funkcia je podobná funkcii STRCMP () okrem toho, že prvý sa porovnáva N Symboly. Je považovaný za bezpečnejší, pretože sa vyhýba poruchám kvôli prečerveniu.
  • 2. Spustite program z požadovaných knižníc. Budete potrebovať knižnice a , ako aj akékoľvek iné knižnice potrebné pre váš špecifický program.
    #Include [[Obrázok: Porovnať dva reťazce v C Krok 1 verzia 4.jpg | centrum] # zahŕňa 
  • 3. Zadajte funkciu int. Vracia celé číslo ako výsledok porovnávania dĺžky dvoch riadkov.
    [Obrázok: Porovnať dva reťazce v C Krok 2 verzia 4.jpg | centrum] # zahŕňa [[Obrázok: Porovnať dva reťazce v C Krok 3 verzia 3.jpg | centrum] # zahŕňa int Hlavná () {}
  • 4. Určite dva riadky, ktoré chcete porovnať. V našom príklade porovnávame dva riadky s typom Char. Tiež definovať návratovú hodnotu ako celé číslo.
    [[Obrázok: Porovnať dva reťazce v C Krok 4 verzia 4.jpg | centrum] # zahŕňa [[Obrázok: Porovnať dva reťazce v C Krok 5 Verzia 4.jpg | centrum] # zahŕňa int hlavné () {char * str1 = "Jablko"-Char * str2 = "Oranžový"-Int ret-}
  • päť. Zadajte funkciu porovnávania. V našom príklade používame funkciu StrnCMP (). Musí nastaviť počet meraných znakov.
    [[Obrázok: Porovnať dva reťazce v C Krok 6 verzia 4.jpg | centrum] # zahŕňa #Include int hlavné () {char * str1 = "Jablko"-Char * str2 = "Oranžový"-Int ret-RET = StrNCMP (STR1, STR2, 8) - / * Porovnajte dva riadky, ktorej dĺžka nepresahuje 8 znakov * /}
  • 6. Zadajte podmienený operátor Ak ... Inak. Je potrebné ukázať, čo je reťazec dlhší. Funkcia StrnCMP () Vrátiť číslo 0, Ak sú reťazce rovnaké, kladné číslo, ak je STR1 dlhší, a záporné číslo, ak je STR2 dlhší.
    #Include #Include int hlavné () {char * str1 = "Jablko"-Char * str2 = "Oranžový"-Int ret-ret = StrnCMP (STR1, STR2, 8) -AK (RET> 0) {Printf ("Str1 je dlhší") -} inak, ak (ret < 0){printf("str2 длиннее")-}else{printf("Длины строк равны")-}return(0)-}
  • Upozornenia

    • Pamätajte, že ak sú dĺžka reťazca rovnaké, hodnota 0 sa vráti. Môže vás zmiasť, pretože 0 je tiež hodnota false (false).
    Podobné publikácie