3
tutorialesya.com.ar http://www .tutorialesya.com.ar/cmasmasya/detalleconcepto.php?pu nto=12&codigo=139&inicio=0 12 - Cadena de caracteres mediante vectores Un string es una serie de caracteres seguidos almacenados en la memoria RAM. Veremos la forma de administrar string en C++ heredados del lenguaje C (esta forma de administrar string es ampliamente utilizada ) Una cadena o string de caracteres es un vector con componentes de tipo char. Se define de la siguiente manera: char <Nombre> [<Cantidad de caracteres>]; Ejemplo: char cadena[8]; La variable cadena puede almacenar hasta 7 caracteres (lo definimos de 8 ya que requiere un caracter para indicar el fin) No existe operador de asignación para cadenas. Podemos definir y almacenar inmediatamente la cadena: char cadena [8]="hola";  Al definir la ca ntidad de co mponentes q ue tendrá el vector , debemos te ner en cuen ta que ne cesitamos un elemento para guardar el terminador de cadena. El terminador de cadena (‘\0’) marca el fin del vector de caracteres. El contenido de cada componente del vector es el siguiente: componente [0] [1] [2] [3] [4] [5] [6] [7] Cadena 'h' 'o' 'l' 'a' '\0' Problema 1: Confeccionar un programa que defina dos vectores de caracteres con los nombres de meses de "enero" y "febrero". Mostrar luego por pantalla los dos vectores Programa: #include<iostream> using namespace std; void main() {  char mes1[20]="enero";  char mes2[20]="febrero";  cout <<mes1;  cout <<"\n";  cout <<mes2;  cin.get(); }

12 - Cadena de Caracteres Mediante Vectores

Embed Size (px)

Citation preview

Page 1: 12 - Cadena de Caracteres Mediante Vectores

7/25/2019 12 - Cadena de Caracteres Mediante Vectores

http://slidepdf.com/reader/full/12-cadena-de-caracteres-mediante-vectores 1/3

tutorialesya.com.ar  http://www.tutorialesya.com.ar/cmasmasya/detalleconcepto.php?punto=12&codigo=139&inicio=0

12 - Cadena de caracteres mediante vectores

Un string es una serie de caracteres seguidos almacenados en la memoria RAM. Veremos la forma de

administrar string en C++ heredados del lenguaje C (esta forma de administrar string es ampliamente utilizada)

Una cadena o string de caracteres es un vector con componentes de tipo char.

Se define de la siguiente manera:

char <Nombre> [<Cantidad de caracteres>];

Ejemplo:

char cadena[8];

La variable cadena puede almacenar hasta 7 caracteres (lo definimos de 8 ya que requiere un caracter para

indicar el fin)

No existe operador de asignación para cadenas.

Podemos definir y almacenar inmediatamente la cadena:

char cadena [8]="hola";

 Al definir la cantidad de componentes que tendrá el vector, debemos tener en cuenta que necesitamos un

elemento para guardar el terminador de cadena. El terminador de cadena (‘\0’) marca el fin del vector de

caracteres.

El contenido de cada componente del vector es el siguiente:

componente [0] [1] [2] [3] [4] [5] [6] [7]

Cadena 'h' 'o' 'l' 'a' '\0'

Problema 1:

Confeccionar un programa que defina dos vectores de caracteres con los nombres de meses de "enero" y

"febrero". Mostrar luego por pantalla los dos vectores

Programa:

#include<iostream>

using namespace std;

void main()

{

  char mes1[20]="enero";

  char mes2[20]="febrero";

  cout <<mes1;

  cout <<"\n";  cout <<mes2;

  cin.get();

}

Page 2: 12 - Cadena de Caracteres Mediante Vectores

7/25/2019 12 - Cadena de Caracteres Mediante Vectores

http://slidepdf.com/reader/full/12-cadena-de-caracteres-mediante-vectores 2/3

Este proyecto lo puede descargar en un zip desde este enlace : CadenaInicializar 

Hemos definido los dos vectores de 20 caracteres, si queremos hacer un uso óptimo de la memoria podríamos

definir los vectores con los siguientes tamaños:

  char mes1[6]="enero";

  char mes2[8]="febrero";

Como la cadena "enero" requiere 5 caracteres luego el tamaño mínimo del vector debe ser 6.

Para ingresar cadenas de caracteres por teclado debemos emplear el método getline del objeto cin (le pasamos

como parámetro la cadena a ingresar y el tamaño de la cadena):

cin.getline(cadena,40);

Problema 2:

Confeccionar un programa que defina una cadena de caracteres para almacenar el nombre y apellido de una

persona. La carga del dato hacerla por teclado.

Programa:

#include <iostream>

using namespace std;

void main()

{

  char nombre[40];

  cout <<"Ingrese su nombre:";  cin.getline(nombre,40);

  cout <<"El nombre ingresado es:";

  cout <<nombre;

  cin.get();

}

Este proyecto lo puede descargar en un zip desde este enlace : CadenaCargaTeclado

Para comparar dos cadenas si son iguales no podemos utilizar el operador == como se utiliza en los tipos de

datos enteros vistos anteriormente. Para comparar cadenas debemos emplear la función strcmp:

int strcmp(cadena1,cadena2)

Retorna 0 si las dos cadenas son exactamente iguales, mayor a cero si cadena1 es mayor alfabéticamente que

cadena2 y menor a cero en caso contrario.

Problema 3:

Confeccionar un programa que permita ingresar dos cadenas de caracteres por teclado y luego mostrar un

mensaje indicando si: "son iguales", "la primer cadena ingresada es mayor alfabéticamente" o "la segunda

cadena ingresada es mayor alfabéticamente".

Programa:

#include<iostream>

Page 3: 12 - Cadena de Caracteres Mediante Vectores

7/25/2019 12 - Cadena de Caracteres Mediante Vectores

http://slidepdf.com/reader/full/12-cadena-de-caracteres-mediante-vectores 3/3

using namespace std;

void main()

{

  char cadena1[50];

  char cadena2[50];

  cout <<"Ingrese la primer cadena:";

  cin.getline(cadena1,50);

  cout <<"Ingrese la segunda cadena:";

  cin.getline(cadena2,50);

  if (strcmp(cadena1,cadena2)==0)

  {

  cout <<"son iguales";

  }

  else

  {

  if (strcmp(cadena1,cadena2)>0)

  {

  cout <<"la primer cadena ingresada es mayor alfabeticamente";

  }

  else

  {

  cout <<"la segunda cadena ingresada es mayor alfabéticamente";

  }

  }

  cin.get();

}

Este proyecto lo puede descargar en un zip desde este enlace :

CadenaComparacion

Retornar