Задаволены
Параўнанне даўжыні радка - гэта часта выкарыстоўваная функцыя на мове праграмавання C, бо яна дазваляе даведацца, які радок змяшчае больш сімвалаў. Гэта вельмі карысна для сартавання дадзеных. Параўнанне радкоў патрабуе спецыяльнай функцыі; таму не выкарыстоўвайце: != альбо ==.
Крок
- Ёсць дзве функцыі, якія дазваляюць параўноўваць радкі ў C. Абодва ўключаны ў string.h>кодавая бібліятэка.
- strcmp () - Гэтая функцыя параўноўвае дзве радкі і вяртае розніцу ў колькасці сімвалаў.
- strncmp () - Гэта таксама датычыцца strcmp (), хіба што гэты першы п параўноўвае сімвалы. Ён лічыцца больш бяспечным, бо дапамагае прадухіліць збоі ў перапаўненні.
- Запусціце праграму з неабходнымі бібліятэкамі. У вас ёсць абедзве бібліятэкі stdio.h> і string.h> неабходна, разам з іншымі бібліятэкамі, якія могуць спатрэбіцца для вашай праграмы.
#include stdio.h> [[Выява: Параўнайце дзве радкі ў праграмаванні на C крок 1, версія 4.webp | у цэнтры]] #include string.h>
- Пачніце адзін.унутрфункцыя. Гэта самы просты спосаб навучыцца гэтай функцыі, бо яна вяртае цэлае лік, параўноўваючы даўжыню дзвюх радкоў.
[[Выява: Параўнайце дзве радкі ў C-праграмаванні на этапе 2 версіі 4.webp | у цэнтры]] #include stdio.h> [[Выява: Параўнайце дзве радкі ў C-праграмаванні на этапе 3, версія 3.webp | у цэнтры]] #include string. h> int main () {}
- Вырашыце, якія дзве радкі вы хочаце параўнаць. У гэтым прыкладзе мы параўноўваем два дадзеныя знач радкі. Вы таксама павінны вызначыць зваротнае значэнне ў выглядзе цэлага ліку.
[[Выява: Параўнайце дзве радкі ў праграмаванні на C, крок 4, версія 4.webp | у цэнтры]] #include stdio.h> [[Выява: параўнайце дзве радкі ў C, праграмаванне, на этапе 5, версія 4.webp | у цэнтры]] #include string. h> int main () {char * str1 = "яблык"; char * str2 = "аранжавы"; int ret;}
- Дадайце функцыю параўнання. Цяпер, калі вы вызначылі дзве радкі, вы можаце дадаць функцыю параўнання. Мы ідзем strncmp () таму нам трэба пераканацца, што колькасць сімвалаў для вымярэння зададзена ў межах функцыі.
[[Выява: Параўнайце дзве радкі ў праграмаванні C, крок 6, версія 4.webp | цэнтр]] #include stdio.h> #include string.h> int main () {char * str1 = "apple"; char * str2 = "аранжавы"; int ret; ret = strncmp (str1, str2, 11); / * Параўноўвае два радкі даўжынёй да 11 сімвалаў * /}
- Выкарыстанне.Калі ... Інакшдля выканання параўнання. Цяпер, калі мы стварылі функцыю, выкарыстоўвайце Калі ... Інакш каб вызначыць, які радок даўжэйшы. strncmp () дае 0 у выніку, калі радкі аднолькавай даўжыні, дадатны лік, калі str1 даўжэйшы, і адмоўны лік, калі str2 даўжэйшы.
#include stdio.h> #include string.h> int main () {char * str1 = "яблык"; char * str2 = "аранжавы"; int ret; ret = strncmp (str1, str2, 11); if (ret> 0) {printf ("str1 даўжэйшы"); } інакш калі (ret 0) {printf ("str2 даўжэйшы"); } else {printf ("Дзве радкі аднолькавыя"); } return (0); }
Папярэджанні
- Памятаеце, што зваротнае значэнне роўна 0, калі радкі роўныя. Гэта можа збянтэжыць, таму што 0 - гэта таксама значэнне FALSE.