C++ Variables de tipo string (avanzado)

Enviado por jvilella el Lun, 23/09/2019 - 04:02

Requisitos:

Un string en realidad es un conjunto ordenado de letras (caracteres). Supongamos que tienes:

string nombre = "Juan";

nombre es una variable que contiene 4 caracteres: la J, la u, la a y la n.

Se puede acceder a cada uno de los elementos de este conjunto refiriéndose a la posición que ocupan, empezando por el 0. Es decir:
Puedes acceder a la J con nombre[0]
Puedes acceder a la u con nombre[1]
Puedes acceder a la a con nombre[2]
Puedes acceder a la n con nombre[3]

También puedes modificar las posiciones, por ejemplo, "nombre[0] = 'X'" hará que nombre pase a ser "Xuan".

Podemos modificar letras, pero no podemos añadir ni eliminar letras, es decir, si hago "nombre[4] = 'a';" el programa probablemente fallará, porque la variable nombre es un conjunto de 4 elementos (numerados del 0 hasta al 3), no existe ningún elemento en la posición 4 y por tanto no podemos hacer una modificación en esa posición.

Fíjate que para poner una letra ponemos comillas simples, no dobles. El motivo es que las comillas dobles son para strings, y las simples para caracteres individuales. Es decir, cuando pongo comillas dobles estoy diciendo que lo que hay entre comillas es un conjunto de elementos, mientras que cuando pongo comillas simples estoy diciendo que lo que hay entre comillas es un único elemento, que es un carácter.

Para saber cuantas letras tiene un string debes de usar su subinstrucción "size()", por ejemplo, nombre.size() es 4 porque "Juan" tiene 4 letras. Dicho de otra manera, cuando una variable contiene un conjunto, puedes utilizar el nombre de la variable seguido de ".size()" para conocer cuántos elementos contiene este conjunto.

Podemos usar una variable de tipo int para indicar una posición:

string nombre = "juan";
int posicion;
cout << "Indica una posicion y la covnertire en mayuscula: ";
cin >> posicion;
nombre[posicion] = nombre[posicion] - 32;
cout << nombre;

 

Printer Friendly, PDF & Email

Añadir nuevo comentario

Texto sin formato

  • No se permiten etiquetas HTML.
  • Saltos automáticos de líneas y de párrafos.
  • Las direcciones de correos electrónicos y páginas web se convierten en enlaces automáticamente.