Compare duas strings na linguagem de programação C.

Autor: Judy Howell
Data De Criação: 27 Julho 2021
Data De Atualização: 10 Poderia 2024
Anonim
Ordenação de vetor em C (2020) Super fácil
Vídeo: Ordenação de vetor em C (2020) Super fácil

Contente

A comparação de comprimento de string é uma função comumente usada na linguagem de programação C, porque permite descobrir qual string contém mais caracteres. Isso é muito útil para classificar dados. A comparação de strings requer uma função especial; então não use: != ou ==.

Dar um passo

  1. Existem duas funções que permitem comparar strings em C. Ambos estão incluídos no string.h>biblioteca de código.
    • strcmp () - Esta função compara duas strings e retorna a diferença no número de caracteres.
    • strncmp () - Isso também se aplica a strcmp (), exceto que este é o primeiro n compara personagens. É considerado mais seguro, pois ajuda a evitar travamentos de estouro.
  2. Execute o programa com as bibliotecas necessárias. Você tem as duas bibliotecas stdio.h> e string.h> necessário, junto com outras bibliotecas que você pode precisar para o seu programa.

    #include stdio.h> [[Image: Compare duas strings na etapa 1 da programação C, versão 4.webp | center]] #include string.h>

  3. Comece um.intfunção. Esta é a maneira mais fácil de aprender essa função, pois ela retorna um inteiro comparando o comprimento das duas strings.

    [[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. Decida quais duas strings você deseja comparar. Neste exemplo, comparamos dois dados Caracteres cordas. Você também deve determinar o valor de retorno como um número inteiro.

    [[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 = "maçã"; char * str2 = "laranja"; int ret;}

  5. Adicione a função de comparação. Agora que você definiu duas strings, pode adicionar a função de comparação. Nós vamos strncmp () portanto, precisamos ter certeza de que o número de caracteres a serem medidos está definido na função.

    [[Image: Compare Two Strings in C Programming Step 6 Version 4.webp | center]] #include stdio.h> #include string.h> int main () {char * str1 = "apple"; char * str2 = "laranja"; int ret; ret = strncmp (str1, str2, 11); / * Compara as duas strings com até 11 caracteres * /}

  6. Usar.If ... Elsepara realizar a comparação. Agora que criamos a função, use If ... Else para determinar qual string é mais longa. strncmp ()0 como resultado, se as strings tiverem o mesmo comprimento, um número positivo se str1 for mais longo e um número negativo se str2 for mais longo.

    #include stdio.h> #include string.h> int main () {char * str1 = "apple"; char * str2 = "laranja"; int ret; ret = strncmp (str1, str2, 11); if (ret> 0) {printf ("str1 é mais longo"); } else if (ret 0) {printf ("str2 é mais longo"); } else {printf ("As duas strings são iguais"); } return (0); }

Avisos

  • Lembre-se de que o valor de retorno é 0 se as strings forem iguais. Isso pode ser confuso porque 0 também é o valor de FALSE.