Paano ihambing ang dalawang mga string sa wika ng C programa

May -Akda: William Ramirez
Petsa Ng Paglikha: 18 Setyembre 2021
I -Update Ang Petsa: 1 Hulyo 2024
Anonim
After School Part 1 - FLUNK LGBT Movie Lesbian Romance
Video.: After School Part 1 - FLUNK LGBT Movie Lesbian Romance

Nilalaman

Karaniwan sa C code na ihambing ang haba ng string upang malaman kung aling string ang naglalaman ng higit pang mga character. Kapaki-pakinabang ito para sa pag-uuri ng data. Ang isang espesyal na pagpapaandar ay kinakailangan upang ihambing ang mga string - huwag gamitin != o ==.

Mga hakbang

  1. 1 Kasama sa wikang C programa ang dalawang pag-andar na maaari mong gamitin upang ihambing ang haba ng string. Ang parehong mga pagpapaandar na ito ay kasama sa silid-aklatan string.h>.
    • strcmp () - Ang pagpapaandar na ito ay naghahambing ng dalawang mga string at ibabalik ang pagkakaiba sa bilang ng mga character.
    • strncmp () - Ang pagpapaandar na ito ay kapareho ng strcmp () maliban sa nauna n mga tauhan Ito ay itinuturing na mas ligtas dahil iniiwasan nito ang mga pagkabigo sa overflow.
  2. 2 Simulan ang programa sa mga kinakailangang aklatan. Kakailanganin mo ang mga aklatan stdio.h> at string.h>pati na rin ang iba pang mga aklatan na kinakailangan para sa iyong tukoy na programa.

    # isama ang stdio.h> # isama ang string.h>

  3. 3 Ipasok ang pagpapaandar int. Nagbabalik ito ng isang integer bilang isang resulta ng paghahambing ng haba ng dalawang mga string.

    #include stdio.h> #include string.h> int main () {}

  4. 4 Tukuyin ang dalawang mga string na nais mong ihambing. Sa aming halimbawa, paghambingin natin ang dalawang mga string ng uri char... Tukuyin din ang halaga ng pagbalik bilang isang integer.

    #include stdio.h> #include string.h> int main () {char * str1 = "apple"; char * str2 = "orange"; int ret; }

  5. 5 Magpasok ng isang function ng paghahambing. Sa aming halimbawa, gagamitin namin ang pagpapaandar strncmp ()... Sa ito kailangan mong itakda ang bilang ng mga sinusukat na character.

    #include stdio.h> #include string.h> int main () {char * str1 = "apple"; char * str2 = "orange"; int ret; ret = strncmp (str1, str2, 8); / * Naghahambing ng dalawang mga string hanggang sa 8 character ang haba * /}

  6. 6 Maglagay ng isang kondisyong pahayag Kung.. Iba pa. Kailangan upang maipakita kung aling linya ang mas mahaba. Pag-andar strncmp () ibabalik ang numero 0kung ang haba ng mga string ay pareho, isang positibong numero kung ang str1 ay mas mahaba, at isang negatibong numero kung ang str2 ay mas mahaba.

    #include stdio.h> #include string.h> int main () {char * str1 = "apple"; char * str2 = "orange"; int ret; ret = strncmp (str1, str2, 8); kung (ret> 0) {printf ("mas mahaba ang str1"); } iba pa kung (ret 0) {printf ("mas mahaba ang str2"); } iba pa {printf ("Ang haba ng linya ay pantay"); } bumalik (0); }

Mga babala

  • Tandaan na kung ang haba ng mga string ay pantay, ang halagang 0. ibabalik. Maaari itong malito sapagkat ang 0 ay MALI din.