Como comparar duas cordas em c programação

Compare o tamanho de uma string é uma característica muito comum em programação em C, porque permite que você ver o que cadeia contém mais caracteres. Isto é muito útil quando organizar a informação. Comparar cadeias requer uma determinada função não usa !=

ou ==.

passos

1
Existem duas funções que lhe permitem comparar duas strings em C. Ambas as funções estão incluídos na biblioteca.
  • strcmp (): Esta função compara duas cadeias e devolve a diferença comparativo do número de caracteres.
  • strncmp (): Esta é a mesma strcmp (), exceto que compara o primeiro caractere n. Ele é considerado mais seguro porque evita que um erro devido a estouro aparece.
  • 2
    Abra o programa com as bibliotecas necessárias. Bibliotecas e necessidade, bem como quaisquer outras informações necessárias para o seu programa específico.
    #include]#include 
  • 3


    uma função começa .int. Esta é a maneira mais fácil de aprender esta função, uma vez que o valor de retorno é uma integral comparando o comprimento de ambas as cadeias.
    ]#include]#include int principal (){}
  • 4
    Define as duas cadeias que deseja comparar. Para este exemplo, duas cadeias são comparados carbonizar predefinido. Você também deseja definir o valor de retorno como um todo.
    ]#include]#include int principal (){carbonizar *str1 = "maçã"-carbonizar *str2 = "laranja"-int ret-}


  • 5
    Adicionar a função de comparação. Agora que você definiu ambas as cadeias, você pode adicionar uma função de comparação. Você vai usar strncmp (), então você precisa se certificar de conjunto o número de caracteres que você vai medir na função.
    ]#include #include int principal (){carbonizar *str1 = "maçã"-carbonizar *str2 = "laranja"-int ret-ret = strncmp(str1, str2, 6)-/ * Isto irá comparar os dois cadenashasta 6 caracteres * /}


  • 6
    Use a instrução .Se ... Else para comparação. Agora que você tem a função em vez disso, use a instrução Se ... Else para mostrar o que cadeia é mais longo. strncmp () mostra 0 se as cordas são do mesmo comprimento, um número positivo se a string "str1" é mais longo e um número negativo se a cadeia "str2" é mais longo.
    #include #include int principal (){carbonizar *str1 = "maçã"-carbonizar *str2 = "laranja"-int ret-ret = strncmp(str1, str2, 6)-se(ret gt; 0){printf("seq1 é mais")-}mais se(ret lt; 0){printf("seq2 é mais")-}mais{printf("As cordas são iguais")-}retorno(0)-}
  • avisos

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

    RELACIONADOS

    Artigos Relacionados