C ++ strncmp () - Biblioteca padrão C ++

A função strncmp () em C ++ compara um número especificado de caracteres de duas strings de terminação nula. A comparação é feita lexicograficamente.

protótipo strncmp ()

 int strncmp (const char * lhs, const char * rhs, size_t count);

A strncmp()função leva dois argumentos: lhs, rhs e count. Ele compara o conteúdo de lhs e rhs lexicograficamente até um máximo de contagem de caracteres. O sinal do resultado é o sinal de diferença entre os primeiros pares de caracteres que diferem em lhs e rhs.

O comportamento de strncmp()é indefinido se lhs ou rhs não apontam para strings com terminação nula.

É definido no arquivo de cabeçalho "> arquivo de cabeçalho.

Parâmetros strncmp ()

  • lhs and rhs: Ponteiro para as strings terminadas em null a serem comparadas.
  • count: Número máximo de caracteres para comparar.

strncmp () Valor de retorno

A strncmp()função retorna um:

  • valor positivo se o primeiro caractere diferente em lhs for maior que o caractere correspondente em rhs.
  • valor negativo se o primeiro caractere diferente em lhs for menor que o caractere correspondente em rhs.
  • 0 se os primeiros caracteres de contagem de lhs e rhs forem iguais.

Exemplo: como funciona a função strncmp ()

 #include #include using namespace std; void display(char *lhs, char *rhs, int result, int count) ( if(result> 0) cout << rhs << " precedes " << lhs << endl; else if (result < 0) cout << lhs << " precedes " << rhs << endl; else cout << "First " << count << " characters of " << lhs << " and " << rhs << " are same" << endl; ) int main() ( char lhs() = "Armstrong"; char rhs() = "Army"; int result; result = strncmp(lhs,rhs,3); display(lhs,rhs,result,3); result = strncmp(lhs,rhs,4); display(lhs,rhs,result,4); return 0; )

Quando você executa o programa, a saída será:

 Os primeiros 3 personagens de Armstrong e Army são os mesmos Armstrong precede Army

Artigos interessantes...