Võrrelge kaht programmeerimiskeeli C stringi.

Autor: Judy Howell
Loomise Kuupäev: 27 Juuli 2021
Värskenduse Kuupäev: 10 Mai 2024
Anonim
Võrrelge kaht programmeerimiskeeli C stringi. - Nõuandeid
Võrrelge kaht programmeerimiskeeli C stringi. - Nõuandeid

Sisu

Stringi pikkuse võrdlus on C-programmeerimiskeeles tavaliselt kasutatav funktsioon, kuna see võimaldab teil teada saada, milline string sisaldab rohkem märke. See on andmete sortimiseks väga kasulik. Stringide võrdlus nõuab erifunktsiooni; nii et ärge kasutage: != või ==.

Astuda

  1. On kaks funktsiooni, mis võimaldavad teil stringe võrrelda C-s. Mõlemad on lisatud string.h>koodikogu.
    • strcmp () - See funktsioon võrdleb kahte stringi ja tagastab tähemärkide arvu erinevuse.
    • strncmp () - See kehtib ka strcmp (), välja arvatud see, et see on esimene n võrdleb märke. Seda peetakse turvalisemaks, kuna see aitab vältida ülevoolu krahhi.
  2. Käivitage programm vajalike teekidega. Teil on mõlemad raamatukogud stdio.h> ja string.h> koos teiste raamatukogudega, mida võite oma programmi jaoks vaja minna.

    #include stdio.h> [[Pilt: võrrelge kahte stringi C programmeerimise 1. etapi versioonis 4.webp | keskel]] #include string.h>

  3. Alustage ühte.intfunktsioon. See on lihtsaim viis selle funktsiooni õppimiseks, kuna see tagastab täisarvu, milles võrreldakse kahe stringi pikkust.

    [[Pilt: C-programmeerimise kahe stringi võrdlus 2. versiooni 4.webp | keskele]] #include stdio.h> [[Pilt: C-programmeerimise 3. etapi kahe stringi võrdlus 3. versiooni 3.webp | keskel]] #include string. h> int main () {}

  4. Otsustage, milliseid kahte stringi soovite võrrelda. Selles näites võrdleme kahte andmeid char stringid. Samuti peate määrama tagastatava väärtuse täisarvuna.

    [[Pilt: võrrelge C-programmeerimise kahte stringi 4. etapi versioonis 4.webp | keskel]] #include stdio.h> [[Pilt: võrrelge kahte stringi C-programmeerimise etapis 5 - versioon 4.webp | keskel]] #include string. h> int main () {char * str1 = "õun"; char * str2 = "oranž"; int ret;}

  5. Lisage võrdlusfunktsioon. Nüüd, kui olete määranud kaks stringi, saate lisada funktsiooni Võrdle. Me läheme strncmp () seega peame veenduma, et mõõdetavate tähemärkide arv on funktsiooni sees seatud.

    [[Pilt: võrrelge kahte stringi C-programmeerimise 6. etapi versioonis 4.webp | keskel]] #include stdio.h> #include string.h> int main () {char * str1 = "apple"; char * str2 = "oranž"; int ret; ret = strncmp (str1, str2, 11); / * Võrdleb kahte kuni 11 tähemärki pikkust stringi * /}

  6. Kasutage.Kui ... Muiduvõrdluse teostamiseks. Nüüd, kui oleme funktsiooni loonud, kasutage Kui ... Muidu et määrata, milline string on pikem. strncmp () annab 0 Selle tulemusel, kui stringid on sama pikkusega, positiivne arv, kui str1 on pikem, ja negatiivne number, kui str2 on pikem.

    #include stdio.h> #include string.h> int main () {char * str1 = "õun"; char * str2 = "oranž"; int ret; ret = strncmp (str1, str2, 11); if (ret> 0) {printf ("str1 on pikem"); } else if (ret 0) {printf ("str2 on pikem"); } else {printf ("Kaks stringi on ühesugused"); } return (0); }

Hoiatused

  • Pidage meeles, et tagastusväärtus on 0, kui stringid on võrdsed. See võib tekitada segadust, sest 0 on ka FALSE väärtus.