cpp

Convertir cadena a mayúscula y minúscula en C++

Anteriormente vimos cómo convertir una cadena a mayúscula y minúscula en C. Ahora veremos cómo hacerlo en C++.

Aunque el código de C es compatible con el de C++, algunas cosas, por más mínimas que sean, cambian.

CPP – Convertir cadena a mayúscula y minúscula

Por otro lado, C++ agrega algunas cosas a las strings que nos permiten hacer más con menos código.

Explicación del algoritmo

Vamos a usar de nuevo las funciones toupper (convertir un carácter a mayúscula) y tolower (convertir un carácter a minúscula), solo que ahora las cadenas son más fáciles de manipular y proporcionan, por ejemplo, la función length.

Para convertir una cadena a mayúscula o minúscula recorremos la cadena carácter por carácter; y en cada iteración modificamos el carácter para que sea mayúscula o minúscula.

El ciclo irá desde 0 hasta cadena.length() -1, porque como lo dije, C++ proporciona más interactividad con las cadenas.

Convertir cadena a mayúscula y minúscula con C++

El programa queda así:

/*
 Convertir una cadena a mayúscula
 y a minúscula en C++ (CPP)

 @author parzibyte
*/#include <iostream>

using std::string;
int main() {
  string cadena = "Parzibyte.me";

  std::cout << "Original: " + cadena;
  // Recorrer toda la cadena
  for (int i = 0; i < cadena.length(); i++) {
    // Y cambiar cada letra por su representación
    // mayúscula
    cadena[i] = toupper(cadena[i]);
  }
  std::cout << "\nMayúscula: " + cadena;
  // Para convertir a minúscula se usa tolower
  // Recorrer toda la cadena
  for (int i = 0; i < cadena.length(); i++) {
    // Y cambiar cada letra por su representación
    // minúscula
    cadena[i] = tolower(cadena[i]);
  }
  std::cout << "\nMinúscula: " + cadena;
}

Es una demostración que primero imprime la cadena normal; después la cadena en mayúscula y finalmente en minúscula.

Recuerda que cadena[i] se refiere al carácter de la cadena en el que estamos.

Funciones para convertir la cadena a mayúscula y minúscula

El código presentado anteriormente puede ser encerrado dentro de una función que recibe una cadena, la convierte a mayúscula o minúscula y la devuelve.

Queda así:

/*
        Funciones paraa convertir una cadena a mayúscula
        y a minúscula en C++ (CPP)

        @author parzibyte
*/#include <iostream>
using std::string;
// Prototipo de funciones
string aMayuscula(string cadena);
string aMinuscula(string cadena);
int main() {
  string cadena = "Parzibyte.me";

  std::cout << "Original: " + cadena;
  string mayuscula = aMayuscula(cadena);
  std::cout << "\nMayúscula: " + mayuscula;
  string minuscula = aMinuscula(cadena);
  std::cout << "\nMinúscula: " + minuscula;
}

string aMayuscula(string cadena) {
  for (int i = 0; i < cadena.length(); i++) cadena[i] = toupper(cadena[i]);
  return cadena;
}
string aMinuscula(string cadena) {
  for (int i = 0; i < cadena.length(); i++) cadena[i] = tolower(cadena[i]);
  return cadena;
}

Es completamente el mismo código pero ahora se devuelve la cadena convertida, y el código queda más limpio.

Por cierto, se pueden simplificar los std::cout con un using std::cout.

Estoy aquí para ayudarte 🤝💻


Estoy aquí para ayudarte en todo lo que necesites. Si requieres alguna modificación en lo presentado en este post, deseas asistencia con tu tarea, proyecto o precisas desarrollar un software a medida, no dudes en contactarme. Estoy comprometido a brindarte el apoyo necesario para que logres tus objetivos. Mi correo es parzibyte(arroba)gmail.com, estoy como@parzibyte en Telegram o en mi página de contacto

No te pierdas ninguno de mis posts 🚀🔔

Suscríbete a mi canal de Telegram para recibir una notificación cuando escriba un nuevo tutorial de programación.
parzibyte

Programador freelancer listo para trabajar contigo. Aplicaciones web, móviles y de escritorio. PHP, Java, Go, Python, JavaScript, Kotlin y más :) https://parzibyte.me/blog/software-creado-por-parzibyte/

Ver comentarios

  • Es una pagina bastante intuitiva, yo probé el código y funciona a la perfección, excelente contenido, Gracias por tomarse la molestia de ensenarnos a todos. Continúa así. Bonito día.

Entradas recientes

Desplegar PWA creada con Vue 3, Vite y SQLite3 en Apache

Ya te enseñé cómo convertir una aplicación web de Vue 3 en una PWA. Al…

2 días hace

Arquitectura para wasm con Go, Vue 3, Pinia y Vite

En este artículo voy a documentar la arquitectura que yo utilizo al trabajar con WebAssembly…

2 días hace

Vue 3 y Vite: crear PWA (Progressive Web App)

En un artículo anterior te enseñé a crear un PWA. Al final, cualquier aplicación que…

2 días hace

Errores de Comlink y algunas soluciones

Al usar Comlink para trabajar con los workers usando JavaScript me han aparecido algunos errores…

2 días hace

Esperar promesa para inicializar Store de Pinia con Vue 3

En este artículo te voy a enseñar cómo usar un "top level await" esperando a…

3 días hace

Solución: Apache – Server unable to read htaccess file

Ayer estaba editando unos archivos que son servidos con el servidor Apache y al visitarlos…

3 días hace

Esta web usa cookies.