Lenguaje C: explicación detallada del uso de strncmp ()

1. Introducción a strncmp ()

1. Prototipo de función

int strncmp(const char *str1, const char *str2, size_t n);

2. Parámetros

  • str1 -La primera cadena que se va a comparar.
  • str2 -La segunda cadena a comparar.
  • n -el número máximo de caracteres para comparar.

3. Función

Se utiliza para comparar los primeros n caracteres de la cadena str1 y str2.

4. Archivos de encabezado

#include <string.h>

5. Valor devuelto

  • De izquierda a derecha , compare n caracteres uno por uno según el valor del código ASCII , hasta que aparezcan caracteres diferentes o encuentren '\ 0', el valor de str1-str2 es el valor de retorno.
  • Si el valor de retorno es <0, significa que str1 es menor que str2.
  • Si el valor de retorno> 0, significa que str2 es menor que str1.
  • Si el valor de retorno = 0, significa que str1 es igual a str2.

Dos, uso de strncmp ()

La función strncmp se usa para comparar cadenas.
El código específico es el siguiente:

#include <stdio.h>
#include <string.h>	

int main(void)
{
    
    
	char *a = "English";
    char *b = "ENGLISH";
    char *c = "english";
    char *d = "English";
    
    printf("strncmp(a, b):%d\n", strncmp(a, b, 7));//字符串之间的比较 
    printf("strncmp(a, c):%d\n", strncmp(a, c, 7));
    printf("strncmp(a, d):%d\n", strncmp(a, d, 7));
    printf("strncmp(a, \"English\"):%d\n", strncmp(a, "English", 7));
    printf("strncmp(&a[2], \"g\"):%d\n", strncmp(&a[2], "g", 1)); //单个字符的比较
	return 0;
}

Los resultados son los siguientes:

strncmp(a, b):32
strncmp(a, c):-32
strncmp(a, d):0
strncmp(a, "English"):0
strncmp(&a[2], "g"):0

Supongo que te gusta

Origin blog.csdn.net/MQ0522/article/details/111245387
Recomendado
Clasificación