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

Comentarios

Hola buenas noches, es para saber que variable puedo utilizar que el programa me almacene dos palabras como respuesta, ejemplo:

que una pregunta me haga contestar "si" o "no"

muchas gracias

tengo una string que en el contenido tiene el nombre de otra variable que quiero modificar

String hola;
int nivel 1;
int nivel 2;
int numero = 2;

hola = ("Nivel" + numero) = //Nivel2 o Nivel1 puede variar
//como lo hago para seleccionar la variable que se llama como la string?
hola.substring(0,6) = (lo que sea)
//pero eso no funciona

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.