Representan secuencias de caracteres, como palabras o frases. En C++, las cadenas se manejan como arreglos de caracteres (char[]) o usando la clase string, que facilita operaciones de manipulación de texto como concatenación, búsqueda y modificación.

Las cadenas se usan para guardar cualquier conjunto de palabras y/o simbolos.

Una cadena es un arreglo y se puede recorrer con un FOR, pero NO tiene sentido.

Entonces una cadena es un arreglo de símbolos, de caracteres y tiene índices.

A las cadenas también se les llama texto.

Ejemplo (Cadenas de forma tradicional usando char)

#include <iostream>

using namespace std;

main(){
	
	char nombre[30];
	
	cout << "Ingrese un nombre: ";
	gets(nombre);
	
	cout << "El nombre ingresado fue: " << nombre << endl;
	cout << "Caracter: " << nombre[4];
		
}

Ejemplo 2. (Cadenas ssando string)

#include <iostream>

using namespace std;

main(){
	
	
	string nombre1 = "Juan Morales";
	
	//Ver el tamaño de la cadena
	cout << "Nombre: " << nombre1 << endl;
	cout << "Longitud del nombre: " << nombre1.size() << endl;
	
	//Borrar parte de la cadena
	nombre1.erase(4, 8);
	cout << "El nuevo nombre es: " << nombre1 << endl;
	
	//Agregar subcadena a la cadena
	nombre1.append(" Ramirez");
	cout << "El nuevo apellido es: " << nombre1 << endl;
	
	//Remplzar una parte de la cadena
	nombre1.replace(2, 2, "Maglio Gomez", 3, 3);
	cout << "El nombre queda: " << nombre1 << endl;
	
	//Insertar una subcadena en la cedena
	nombre1.insert(6, "Antonio ");
	cout << "El nuevo nombre es: " << nombre1 << endl;
	
	//Obtener subcadena (parte de la cadena)
	string subString = nombre1.substr(6, 7);
	cout << "Subcadena extraida: " << subString << endl;
	
	//Asignar un valor a la cadena
	nombre1.assign("Lucas Perez");
	cout << "Su nuevo nombre es: " << nombre1 << endl;
	
	//Encontrar una subcadenas
	int valor = nombre1.find("Per");
	if(valor == -1)
		cout << "Subcadena Per no encontrada";
	else
		cout << "Subcadena Per encontrada";
}