Sammenlign to strenger i programmeringsspråk C.

Forfatter: Judy Howell
Opprettelsesdato: 27 Juli 2021
Oppdater Dato: 10 Kan 2024
Anonim
Sammenlign to strenger i programmeringsspråk C. - Råd
Sammenlign to strenger i programmeringsspråk C. - Råd

Innhold

Strenglengdesammenligning er en vanlig funksjon i C-programmeringsspråket, fordi den lar deg finne ut hvilken streng som inneholder flere tegn. Dette er veldig nyttig for sortering av data. Strengsammenligning krever en spesiell funksjon; så ikke bruk: != eller ==.

Å trå

  1. Det er to funksjoner som lar deg sammenligne strenger i C. Begge er inkludert i streng.h>kodebiblioteket.
    • strcmp () - Denne funksjonen sammenligner to strenger og returnerer forskjellen i antall tegn.
    • strncmp () - Dette gjelder også strcmp (), bortsett fra at denne er den første n sammenligner tegn. Det regnes som sikrere da det hjelper til med å forhindre overløpskrasj.
  2. Kjør programmet med nødvendige biblioteker. Du har begge biblioteker stdio.h> og streng.h> nødvendig, sammen med andre biblioteker du trenger for programmet ditt.

    #include stdio.h> [[Image: Compare Two Strings in C Programming Step 1 Version 4.webp | center]] #include string.h>

  3. Start en.intfunksjon. Dette er den enkleste måten å lære denne funksjonen på, da den returnerer et heltall som sammenligner lengden på de to strengene.

    [[Image: Compare Two Strings in C Programming Step 2 Version 4.webp | center]] #include stdio.h> [[Image: Compare Two Strings in C Programming Step 3 Version 3.webp | center]] #include string. h> int main () {}

  4. Bestem hvilke to strenger du vil sammenligne. I dette eksemplet sammenligner vi to data røye strenger. Du må også bestemme returverdien som et helt tall.

    [[Image: Compare Two Strings in C Programming Step 4 Version 4.webp | center]] #include stdio.h> [[Image: Compare Two Strings in C Programming Step 5 Version 4.webp | center]] #include string. h> int main () {char * str1 = "apple"; char * str2 = "oransje"; int ret;}

  5. Legg til sammenligningsfunksjonen. Nå som du har definert to strenger, kan du legge til sammenligningsfunksjonen. Vi går strncmp () så vi må sørge for at antall tegn som skal måles er satt i funksjonen.

    [[Bilde: Sammenlign to strenger i C-programmering Trinn 6 Versjon 4.webp | center]] #include stdio.h> #include string.h> int main () {char * str1 = "apple"; char * str2 = "oransje"; int ret; ret = strncmp (str1, str2, 11); / * Sammenligner de to strengene på opptil 11 tegn * /}

  6. Bruk.Hvis ... Ellersfor å utføre sammenligningen. Nå som vi har opprettet funksjonen, bruk Hvis ... Ellers for å bestemme hvilken streng som er lengre. strncmp () gir 0 som et resultat, hvis strengene er like lange, et positivt tall hvis str1 er lengre og et negativt tall hvis str2 er lengre.

    #include stdio.h> #include string.h> int main () {char * str1 = "apple"; char * str2 = "oransje"; int ret; ret = strncmp (str1, str2, 11); hvis (ret> 0) {printf ("str1 er lengre"); } annet hvis (ret 0) {printf ("str2 er lengre"); } annet {printf ("De to strengene er like"); } returner (0); }

Advarsler

  • Husk at returverdien er 0 hvis strengene er like. Dette kan være forvirrende fordi 0 også er verdien av FALSE.