Las cadenas de programación en lenguaje C

lenguaje C Cuerdas Tutorial : En este artículo, vamos a aprender los conceptos básicos de Las cadenas en lenguaje de programación C con ejemplos .

¿Cuáles son Cuerdas ?

Cuerdas son en su mayoría considerado difícil por muchos principiantes pero confía en mí, las cadenas son nada del otro mundo. Una cadena no es más que un grupo de caracteres almacenados en una matriz de caracteres. matrices de caracteres se utilizan en los lenguajes de programación para manipular palabras y frases.

A cadena es una constante en la forma de la unidimensional matriz de caracteres terminada por un carácter nulo que es 0 . Ejemplo,

 char city[] = {'T', 'O', 'K', 'Y', 'O', '_CP0_'};

Puntos a tener en cuenta:

  • espacio de memoria ocupado por cada carácter es un byte y el último carácter tiene que ser nula 0 .
  • 0 no debe confundirse con el dígito 0 ya que el valor ASCII de nula es 0 mientras que el de ‘0’ es 48.
  • Los miembros de la matriz se almacenan en posiciones de memoria contiguos Como se muestra abajo.
  • El carácter nulo al final es muy importante ya que es la única manera para que el compilador sabe dónde termina la cadena. Sin embargo, debe observarse, la declaración nula no es necesario. Se inserta por el compilador automáticamente como en el siguiente ejemplo: char ciudad [] = “TOKYO”;
  • La especificación de formato utilizado para la impresión y la recepción de una cadena es “% s” .

Ahora vamos a ver algunos de los ejemplos:

Ejemplo 1: Cadena de declarar y carácter de impresión por el carácter

#include <stdio.h>
int main()
{
//declaring string
char city[] = "Tokyo" ;
//loop counter
int i = 0 ;
//printing string one by one character
while ( i <= 4 )
{
printf ( "%c", city[i] ) ;
i++ ;
}
return 0;
}

salida

    Tokyo

programa simple, donde estamos el tratamiento de la cadena como una matriz de caracteres y utilizar c de printf () comunicado%. Además, la longitud de la palabra se toma como 4 debido a que el valor del primer elemento de una matriz siempre se asigna 0 , como todos sabemos ya. Sin embargo, esta solución no es rentable si tenemos una cadena más grande.

lo tanto, aquí es otra manera de do que:

Ejemplo 2: Cadena de declarar y carácter de impresión a carácter hasta NULL no encontraron

#include <stdio.h>
int main()
{
//declaring string
char city[] = "Tokyo" ;
//loop counter
int i = 0 ;
//printing string one by one character
//till NULL ('_CP3_') not found
while ( city[i] != '_CP3_' )
{
printf ( "%c", city[i] ) ;
i++ ;
}
return 0;
}

salida

    Tokyo

Ejemplo 3: Declarar cadena de impresión y como cadena (utilizando “% s” especificador de formato)

#include <stdio.h>
int main()
{
//declaring string
char city[] = "Tokyo" ;
//print as string
//using "%s" format specifier
printf("%s",city);
return 0;
}

salida

    Tokyo

Esta fue la forma más sencilla de imprimir una cadena utilizando la especificación general de % s .

Ejemplo 4: Lectura cadena usando scanf () función

#include <stdio.h>
int main()
{
//declaring string/character array
char city[15] ;
//read string
printf ( "Enter a city: " ) ;
scanf ( "%s", city ) ;
//printing string
printf ( "Good Morning %s!", city) ;
return 0;
}

salida

    Enter a city: Mumbai
Good Morning Mumbai!

Aquí, la Declaración char ciudad [15] almacena 15 bytes de memoria en la matriz ciudad [] . Mientras que, el scanf () función rellena los caracteres introducidos hasta que la tecla Enter es presionado por el usuario. Después de eso, scanf () añade automáticamente un carácter nulo dejando en blanco la otra memoria.

Puntos a tener en cuenta while usando scanf ():

  1. La longitud de la cadena introducida por el usuario no debe exceder el valor declarado en la matriz desde los compiladores de C no do muestran cualquier índice de matriz fuera de error unido para esto. Simplemente dará lugar a la sobreescritura de los datos importantes.
  2. Usando scanf () , no podemos entrar en una cadena de palabras múltiples, por ejemplo, “Nueva York”. Este problema se puede resolver mediante el uso de la función gets () y puts () como se muestra a continuación,

El uso de gets () y puts ():

#include <stdio.h>
int main()
{
//declaring string/character array
char city[15] ;
//read the string
printf("Enter a city: ");
gets(city)
//printing the string
puts("Good Morning!");
puts(city);
return 0;
}

salida

    Enter a city: New York
Good Morning!
New York

Aquí, puts () pueden mostrar sólo una cuerda a la vez, por lo tanto, se utilizan dos pone) declaraciones (. Además, a diferencia printf () , coloca el cursor de forma automática a la siguiente línea.

Aunque gets () puede recibir sólo una cuerda a la vez, todavía es preferible, ya que puede recibir varias palabras cadenas .

Nota del autor:

Este fue un básica de lo que realmente son cadenas . En el próximo artículo, voy a escribir sobre las manipulaciones de cadena y funciones de cadena de la biblioteca estándar. Para una mejor comprensión, la práctica de estos códigos en su propio cambiando los valores y salidas. Estoy listo para ayudar si el case de consultas. codificación feliz!


Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *