Función Strnlen 2 C

Función Strnlen 2 C

Para determinar la longitud de una cadena en C, use la función Strnlen. El método que devuelve el recuento de caracteres de la cadena se llama longitud de cadena. Cualquier cadena que use este enfoque tiene la longitud de los caracteres en la cadena. La función strnlen () determina el tamaño de la cadena mencionado por el personaje "S", excluyendo el carácter nulo final y hasta los bytes Maxlen. Después de los primeros bytes de Maxlen, la función deja de verificar. Esta función es ligeramente diferente de la función strlen. Los caracteres en una "s" de cadena que vienen antes de su último carácter nulo están indicados por la función strlen (). La función strnlen () produce el mismo resultado que el strlen () o el maxlen, lo que sea menos. Podemos determinar la longitud de una cadena de tamaño fijo con el comando strnlen. Aquí, veremos algunas instancias que devuelven una longitud de cadena utilizando la función Strnlen en el idioma C mientras se usa el Ubuntu 20.04 terminal.

Sintaxis:

# size_t strnlen (const char *s, size_t maxlen);

La función strnlen toma solo dos parámetros que incluyen la variable de puntero "s" del tipo de datos de char y el "size_t" maxlen. Aquí, el parámetro "S" apunta a una cadena que tiene un extremo nulo. El "size_t" maxlen representa la mayoría de los caracteres que deben escanear antes de devolver un marcador de extremo de cadena. El método strnlen () devuelve el máximo de los bytes maxlen en la cadena mencionada por "s", ignorando el byte nulo final ('0').

La función strnlen () nunca examina ningún personaje más allá del s [maxlen-1] al hacer esto. En cambio, solo escanea los primeros caracteres Maxlen en la cadena vinculada por "S". Ahora, usamos esta sintaxis de Strnlen en nuestra implementación de código con el idioma C.

Ejemplo 1: Programa de la función Strnlen

La cuerda.H Biblioteca contiene las funciones de cadena preestablecida para C, incluida la función Strnlen. Un tipo variable, una macro y muchas funciones para trabajar con las matrices de caracteres están definidas en el archivo de encabezado "cadena.H ". Varias funciones para trabajar con cadenas se declaran en el archivo de encabezado C "cadena.H ". La forma correcta de usar la función strnlen se demuestra en lo siguiente:

#incluir
#incluir
#incluir
int main (nulo)

printf ("%ld \ n", strnlen ("computadora", 9));
printf ("%ld \ n", strnlen ("mi mundo \ n", 4));
printf ("%ld \ n", strnlen ("", 10));
return exit_success;

El primer paso de cada programa es incluir todas las bibliotecas requeridas para que el código se ejecute perfectamente. Entonces, agregamos las tres bibliotecas principales para este programa. Dentro de ese método principal, el vacío se pasa como parámetro. En esta situación, el principal puede aceptar un máximo de cero argumentos. En consecuencia, dado que la función principal no acepta ningún parámetro, esencialmente utiliza el int main (nulo).

Luego, llamamos a los tres comandos printf. Para estos comandos, el formato '%ld' se pasa como una declaración. Para representar los números enteros, se utiliza el especificador de formato %d. Se imprime el valor entero mantenido en la variable, utilizando la función printf (). El strnlen también se declara en el método printf. Definimos dos parámetros: uno es el valor de la cadena y el otro es el valor entero. Tenga en cuenta que las funciones de primera y segunda strnlen no tienen el carácter nulo y la última tiene el carácter nulo.

Ahora, con el compilador GCC, hemos dado un nombre de archivo del código donde se usa la función strnlen. Como el archivo de código está dentro del strnlen.C, hemos dado un comando como este: GCC Strnlen.c -o strnlen. El código se compila en la siguiente imagen. Dando el "./Strnlen "Nombre del archivo, la salida posterior se produce. Dado que las dos primeras funciones de Strnlen contienen algunos valores de cadena, se muestra el strnlen de la cadena. La última línea de la salida que devuelve el valor 0 como la cadena definida tiene caracteres nulos.

Ejemplo 2: Programa de función Strnlen para obtener Maxlen

Veamos qué significa exactamente este ejemplo de título implementando el código de ejemplo:

#incluir
#incluir
int main ()

char str1 [100] = "El ejemplo de la función strnlen - c lenguaje";
printf ("Longitud de cadena Str1 cuando Maxlen es 30: %ld \ n", strnlen (str1, 30));
printf ("Longitud de cadena Str1 cuando Maxlen es 10: %ld \ n", strnlen (str1, 10));
regresar 0;

Aquí, definimos las bibliotecas C para realizar la funcionalidad Strnlen y otros comandos. Entonces, tenemos la función principal int principal. Un int sirve como un tipo particular de retorno principal. En otro término, ahora se espera que la función reciba un valor del tipo de resultado int (enteros). También se incluye una declaración de devolución.

Después de finalizar un programa, debe devolver preferiblemente su valor de 0 al principal. Dentro del bloque principal, creamos una variable STR1. Una matriz de chars es producida por la expresión de char str1 [100]. Podemos almacenar 100 caracteres en esta matriz de personajes, que van desde el índice 0 hasta el índice 99. Luego, inicialícelo con la cadena que contiene las diferentes palabras. El comando printf aquí se usa para imprimir la longitud de los caracteres de cadena a medida que pasamos la función strnlen a este comando. El primer strnlen asignó el Maxlen 30 y el segundo asignó el Maxlen 10.

La función strnlen en la compilación genera el siguiente máximo de los caracteres de cadena:

Conclusión

Esta publicación busca informarle sobre la función Strnlen del lenguaje C. Aquí, mostramos cómo aplicar la función Strnlen. Explicamos la sintaxis de la función Strnlen con cada parámetro que se necesita y el valor de retorno de esta función particular. La operación strnlen () devuelve el máximo de las cadenas de caracteres si no hay caracteres nulos ('0') entre los primeros caracteres del máximo dado por la variable "s". De lo contrario, devuelve (s) (s) de Strnlen si eso es menor que el Maxlen. Dimos dos ejemplos para una mejor comprensión de la función de strnlen en el lenguaje de secuencia de comandos que borra su visión sobre esta función de Strnlen del lenguaje C.